That's not anyone making anyone else feel guilty or good or bad about themselves, rather that's an entire industry that has been allowed through actual legislation to shift the burden of paying their employees from themselves to their own customers. That's the root of it. And those customers have no obligation to actually give anyone any money. It's a really screwed up system, and like you say it's completely unregulated and opens the door for all kinds of awful dynamics around racism/sexism/etc.
So, if someone stiffs their server in a restaurant in spite of their friends trying to guilt them into tipping, the person stiffing the server is truly the asshole in that situation. Yeah, the whole system's screwed up, it shouldn't be like that, it's all a big scam, but the service industry people shouldn't be the ones to get screwed over it. I'm not accusing anyone here of doing this, it's just something I've witnessed. I.e., someone who thinks they're really teaching someone (not sure who) a lesson about how much they detest expectations around tipping by stiffing their server or always leaving lousy tips. Whenever I've seen this happen, all I've seen was a rich person being shitty to a poor person to send a message to the poor person's employer that the employer never receives. I'm as annoyed by expectations around tipping as anyone, but hopefully everyone realizes that the restaurant server situation is very different from most other situations (valet, hotel employee, etc.).