The first paragraph is all true, as far as I know. "Buccaneer" came to mean a pirate because pirates, like other sailors of the time, ate a lot of pork. Pirates who got too old to pirate any more (not a large percentage, I would guess) would settle down on some Caribbean isle and raise pigs, which they would smoke and trade to pirate ships for whatever they needed. So old pirates became baconeers, and eventually all pirates became buccaneers.
The original crackers were herding pigs, using whips to keep the pork moving. Another word derived from pigherding is “buccaneer,” a corruption of an old French word for pig farmer (i.e., “baconeer”).
So when you call someone a “cracker,” you’re accusing him of being a fan of the Tamp[a] Bay NFL team. Hence the term’s offensiveness.
The second paragraph is admittedly a stretch. But really, naming a team after murderous, thieving pirates is offensive. If someone was stealing your FedEx shipments and selling them on eBay, would you cheer for a team named after him? What next, the Toledo Taliban? The San Jose SS? The Wisconsin McCarthyites? The University of Phoenix Concern Trolls?