

See how many people here share your troubles? There’s no shortage of people like you. The thing is, like you say, you have to stop putting up with people’s bullshit. When you notice bullshit, confront them with it, and if there’s no way of reconciliation, move on immediately, don’t try to “put up” with anything. From what you said it seems like you hold on to toxic people too long.
Also, have you ever thought about that you might also have “BS” that other people would have to deal with when they want to create a deep connection with you? Do you think that’s absolutely impossible?
What I mean with “you’re not the only one” is that you’ll be (probably easily) able to find people that are good for you. Didn’t mean to put light on the fact it’s a societal issue; might be, might not be, but it’s irrelevant. Just meant to say that enough good people are out there.
If you’re like what you say you are, “staying with people in the hopes they might change for the better”, what I’ve noticed in my time on Earth is that “people like you” actually do find these problematic people specifically and spend their time with them. You want to improve the world and that means the people within them, and so you think your time is well spent like this.
However, this is unfortunately almost totally wrong. Instead of achieving your goal, the problematic people just mostly stay like they are, and because of that all that happens is that you become miserable because you don’t see any improvement, and don’t have any meaningful relationships.
If I may suggest an alternative, what I’ve found is that you actually have to find people that are already mostly good and have a proven track record of improving themselves. These are mostly good people. They have no big problems and no toxic behaviors. I assume you are such a person. So in other words, you have to find someone like you. If you do that, you can both improve together and help each other, instead of this one-sided thing you probably mostly had going on.
And yeah, like you said, “not setting yourself on fire to keep others warm”, this means you have to stop spending time with the people that just drain you, even though it may sometimes be painful.
Anyway, hope you have a wonderful time, because this is actually all really fun once you prioritize your own happiness while dealing with others :D