Am I wrong? What would you do?

I vowed to never let my kids get to know my mother in law before we had kids and my husband agreed to it because she has shown lots of psychopathic traits. We felt like walking on eggshells around her. At the end of the day after spending time with her, I always feel absolutely emotionally drained. She would keep saying hurtful remarks like every 5 minutes.

I’ve been with my husband for 13 years, married for 11. She has never done one single nice thing to me despite my efforts in trying to treat her well. She’s always hostile, disrespectful and mean to me. She has always made lots of efforts in trying to make me feel afraid of her so that I leave her son alone. For example, she intentionally asked my parents to come pick her up at the airport (when they had never met each other) on a wrong date. They stood there looking for her for 4 hours, she never showed up. At that time, they’d only seen her in pictures. She spread rumors about me to people and brainwashed my husband to lie and deceive me about a lot of things for the whole two years that we were dating. I forgave him and decided to marry him because he told me it was all because of his mother and said he would never listen to her again.

He hadn’t lied to me in 10 years, but I just caught him lying about never letting our kids talk to her. He did it many times behind my back for one year. When I confronted him, instead of saying sorry, he said he’s changed his mind about his mom and just said that she’s just mean to me because she just doesn’t like me, and didn’t want him to marry me, that’s all. He said I just need to learn how to handle difficult people instead of running away. And that not letting our kids get to know their grandmother is wrong and cruel. He said he had to lie because I’d always get upset when he tried to tell me he wasn’t happy with his kids not being allowed to talk to his mother. Of course, I would get upset because I don’t want my children to go through what I go through. Even if she’s not bad to them now when they’re just talking on the phone for a few minutes at a time, who knows what she would do if they met. Personally, I believe she didn’t care to get to know the kids at all, she just wants to do things she knows I’m not okay with to hurt me and drive me away from my husband, as she always does.

After the dispute, I got very angry with him. And yes, I did things I’m not proud of. I called him names and yelled at him in a disrespectful manner and said lots of mean words. I felt like being betrayed was hurtful enough. And I still had to be blamed for his action? Is this gaslighting? I contemplated divorce for a while but I decided to make up with him for the sake of the children but now he’s saying he wants separation because he’s scared of me.

Am I in the wrong and do I deserve this? After all, it was something he promised and agreed with me and I put my trust in him and he just abused it. I can’t even get mad? I forgave him for mistreating me for years, and he can’t forgive me for getting mad at being betrayed?