A lot of people aren't perfect, but that doesn't give an excuse to be toxic. It's hard to believe that I almost became a toxic person when I was really young. I became friends with a toxic and possessive person that taught me that the way I was going was not good. Learning this at a young age I find very invaluable and helped me to become a better friend and person towards other people. However, I never learned how to take care of myself and not let toxic people take advantage of my kindness.
It is hard for some people to cut off ties since there would be a guilt that we place on ourselves to make us stay in the relationship. It's a less extreme version of being in an abusive relationship. I know that I placed a lot of emphasis on a lot of my friendships and toxic people can see when someone places themselves so whole-heartedly into a relationship. They'll take advantage for their own reasons and/or gain. Whether it's to make themselves feel more important or loved. Or just to make sure that they have someone to fall back on when another relationship fails.
Now I will not address familial or romantic abuse since those are not relationships that are an area that I can speak about and be considered credible. However, toxic relationships can appear in friendships and/or in the workplace and it is important to not associate or let those people take advantage of your feelings, thoughts, or beliefs. Whatever the reason that they may have to justify that they can continue to be toxic, the advice I would give is still the same. Do not let them have their way. If they do not respect you or others around you or that they just treat you like you are important when it's convenient, leave.
What gives a toxic person power is you caring about what you are willing to give to them for free. Without them having to pay an equal price in return. This doesn't mean that you guys have to be paying off each other, but it's a "you scratch my back, and I'll scratch yours" exchange. A toxic person will attempt to avert the blame from them to you since they want to blindside you into thinking that the relationship isn't working because you are the problem.
This is what I have learned over the years of trying to search for a best friend. We all really want someone (friend, relative, lover, etc.) to understand us and that is what I really wanted. But that was a vain dream since that will never happen. I've accepted that since none of us can read each other's minds and know what each other is thinking that we should try to pretend that a best friend exists. Even if you've known someone for years, there will be at least something that someone doesn't know about someone. And to put that much pressure on a friend is exhausting and somewhat unfair. We all have our own lives and to keep track of everything that a best friend does and to constantly be with them, it's impossible.
It's too bad no one teaches you that and you have to learn it yourself. But at least I learned it later than never. And there's nothing that can be done about toxic people unless they want to do something about it. Make themselves into better people instead of just taking advantage of others. The only person that you can control is yourself and what actions you take to be a better person. That's why you have to surround yourself with people who will treat you right and support you, not people who will take advantage of your kindness and underappreciate what you have to offer them.
Don't feel guilty about not satisfying a toxic person since it's a fruitless endeavor, just how it is in vain to have a friend who is so close to you that they'll understand you fully.