Forgiving people who have wronged you, and even going so far as to apologize for your own lesser mistakes, can be quite powerful for your own mental health I find. Now to be clear, this doesnt mean you let them get away with it or hurt you again, distance yourself as needed and dont stand for a repeat, but you can do that and still forgive.
You cant control how they act, and perhaps they had little real control, perhaps its just the illusion of control. Either way, thats not your problem, thats for them to grow from or not, to learn from their mistakes. The only thing you are responsible for is learning from **your** mistakes, and admitting them is not admitting a greater guilt. No matter how much they may have done wrong, focus on how you responded to it, how you provoked it, how you caused wrong, worry about learning to improve your actions and let go of the rest.