To forgive is Divine. To forgive the same thing over and over again is weakness. When Shawn (my former husband) cheated on me for the second time with a second woman, it would have been so much easier to forgive him, stay married and move on. It took much more courage, much more bravery to leave him, leave my "perfect" life, to move on, and to have more respect for myself. Have I forgiven him? Yes. Of course I have. Does that mean I had to stay married to him? No.
Controllers, abusers and manipulative people don't question themselves. They don't ask themselves if the problem is them. They always say the problem is someone else. Be healthy, giving people the benefit of the doubt is no longer part of our ever growing, ever changing society. You can love someone with caution. Doesn't mean you love them less..
How to apologize correctly. This is phrased in the context of marriage, but I think these rules of thumb are important for any kind of relationship with another human being. I struggle with a lot of these; it's a harsh, but nice, reminder to be a better person.