With friends, for sure. With randos? Never, because the purpose of shit-talking with strangers (at least based on what I've personally encountered) is to make the other person/team feel as terrible about themselves as possible because there's no accountability; after you log off, you'll probably never encounter that person again. Because of that, it's no longer about good-natured ribbing like it usually is with friends; it's about being as mean as possible, and being mean isn't my jam. Video games are meant to be fun, not a breeding ground for meanness.
I don't doubt that all of your shit-talking is "above the belt" (if "above-the-belt" shit-talking even exists) and not based in hate or racism, OP. Regardless, people like you are still one of the main reasons why I hardly ever play anything online with randos, and when I do, why muting voice chat is the very first thing I do if I'm playing a game that has it (which in itself is very rare for the above stated reasons).
Nah. Video games are never worth hurting others or having to constantly ward off people trying to be horrible to you. I'd rather just play and have a good time, none of that other shit is necessary to me. Again, though, friends are a different story since the context is different and the shit-talking is being done with people you trust not to take it too far.
There's enough anger and hate in the world already, OP, a great deal of it caused and instigated by the gaming community. Why would you or anyone ever choose to contribute to that? Over something as thoroughly meaningless (in the grand scheme of things) as video games? Here's a thought: try being nice to strangers. Encourage them to get better instead of shaming them when they lose. Spread goodness instead of meanness. It isn't hard. It really, really isn't.