Help me. What do I do?

Please give me your most sound advice.

I have a one and a half year old, pregnant with our second, and two step children from my husband’s previous marriage.

I love my husband with all my heart. He is literally my best friend and when we are good, we are OVER THE MOON in love. We have the best humor and have the best time.

But his emotions are a roller coaster. Extremely emotional. We will have an amazing day, next thing you know, it’s like his mood flips and he’s yelling at me. He’s very loud when he talks so when he’s upset he gets REALLY LOUD. He will start attacking me, what it feels like, as I’m standing there like ??? Wtf just happened. He will say “fuck you” and “fuck this,” and tonight he said “just put a fucking gun to my head... I just stay quiet and leave the room to get away from him. I go downstairs and I can hear him upstairs cussing and getting so mad talking to himself.

I go into our room, turn off the lights, lay down and just pray he leaves me alone. He will come in the room and start saying “smart” comments. I’ll start crying and put my hands over my ears and ask him to please leave the room. Please leave me alone. Then he’ll say “you’re over exaggerating!!” As I’m sitting there crying and just trying to be away from him.

I’m not perfect either and I have my things to work on, like doing a better job of listening and things like that, but he is OUT of control In his reactions and extremely disrespectful.

We’ve had three massive fights like this in the past few weeks. The next morning he always apologizes and swears it’ll never happen again and he will change.

I told him the last time that if we have another fight and he starts saying “fuck uou” or immature and disrespectful things, we will have to separate.

We are out of state very far away from our families. We have no one here. There’s nowhere he could go or I could go to just get away for a few days.

What do I do?