Should I leave?

So my fiancé and I have been together 2 years, and I’m 23 weeks pregnant with our first child. A while ago, his mom and I got into a huge argument bc I was tired of her butting in our business, and him not telling her to lay off. She ended up saying very hurtful things to me, such as “you make my son feel useless and worthless” and had opinions on certain things me and him has gotten into arguments about, that I didn’t know she knew. Turns out, he had been going to her every single time we got into an argument, making me out to be the bad guy. Fast forward to today. I had read a message between him and his ex-stepmom that stated his mother, and a good bit of other people were coming to our house this weekend. His stepmom did not know I knew, and he told her to keep it from me so I can’t have an opinion on it bc there’s nothing I’ll be able to do once she is already here. I’m livid for obvious reasons. I voiced to him that I was upset with him that he hid something from me that he knows I deserve to know. I mean, there’s a get together going to happen at our house, with his mother who I’m not on speaking terms with, that I had no idea of. If I wouldn’t have found out I would’ve had no time to prepare myself. Anyways, he got livid with me for not forgiving his mother for all she’s said to me, even though he said everything she said was horrible and not okay. It turned into him punching walls, screaming at me till he was purple in the face, him getting in my face and threatening to physically harm me (Mind you I’m fricking pregnant) and he went to our gun safe and said he was going to shoot himself with the 12 gage (which he’s done multiple times so it doesn’t phase me anymore bc he uses it as a manipulative tactic to get what he wants). Our relationship is so toxic, and I’m scared for our daughter and my safety when he goes into an anger rage. I’ve tried leaving quite a few times but he always apologizes and begs me not to leave and says he’ll get counseling and change. Today was the first day he actually left the house and is staying elsewhere for the night (he’s staying with his mother, go figure) so there’s no telling what she’s telling him to do. I depend on him financially and he knows that. I dont know where I’d go or do if I left. I need help and advice please.. I love him so much but I don’t like how bad his anger gets when I mention something that has me feeling a certain type of way.