There is definately one thing you can change that will instantly improve you. It might not be easy but the results will be very impactful...
Those people who say hurtful things? Get rid. They bring zero value to you.
People (especially strangers) who are nasty about others are ALWAYS so insecure that the only way they can make themselves feel better is by bringing others down. But that isn't your problem. You are not there to be abused or make them feel better.
Their nastiness is about them, not you. Think about it, when you feel happy about yourself you don't notice other people so much do you?
I also doubt that people are talking about you as much as you think they are. For a stranger, at most you'll be a fleeting thought. If a stranger is mean to you, they'll have forgotten about you 10 minutes later and will be finding fault with someone else to make themselves feel good.
I have a roman nose and my face is so long I look like a horse. I have naturally yellowy teeth but I also have a mixture of implants and crowns that I can't afford (or face) having changed to a better colour so I can't just whiten them. I have tiny piggy eyes. If I were to walk into a room backwards, my bum would appear minutes before me, plus my legs are so short compared to my body that I really struggle to find trousers. No matter how much I look after my feet they resemble hooves and look like one of those "before" pictures on foot products. But no one pays that much attention to me to notice much (any?) of that and I bet you're the same. When I feel bad though, I do imagine everyone is laughing about how I look like a yellow toothed horse. Clue: they aren't because they just don't care that much.
Do you remember that advert where Claudia Schiffer got out of car naked? Even SHE got a body double for some of those shots. If Claudia Schiffer thinks she has body problems, there is no hope for any of us mortals.
So, what are you going to do about those people that make you feel this way?