My (26F) fiancé (28M) ruined our anniversary weekend. Do I leave or stay?

I need some quick urgent advice because I’m at a loss of what to do. I (26F) have been with my boyfriend (28M) for 5 years today. We have gone through a lot of issues over the years, mainly focusing on him lying/doing things that betrayed my trust/breaking his promises. Our communication has never been perfect, with him usually getting angry and saying rude things. He admits I’m the calm one and I usually work hard to do the best at communicating in a kind way. But, for the last 1-2 years, we were always getting into arguments. Our communication was definitely something we had to work on and we signed up for couples therapy when we got engaged this year.

With that being said, this week was the week before our anniversary. One fight blew so out of proportion (over a few extremely small issues) that he has yelled at me like I’ve never seen before. He said a lot of rude and hateful things. He emphasized many times that all I do is annoy and piss him off. The thing that broke me the most is that he said that if I don’t stop pissing him off, he will dump me. I felt shocked, we’ve always agreed to never threaten breaking up and when he’s calm he tells me breaking up is never an option and we will always work through our issues. I ended up having a panic attack because he was acting so cold and heartless I felt like I didn’t know him, seeing him this angry over such a minor issue and insulting me so much seemed so irrational. He ended up trying to calm me down when he realized I was having a panic attack and then apologized the rest of the night. He knew our anniversary getaway weekend was a few days away. He promised he would control himself and make the weekend amazing even though it already felt ruined because I was so hurt by his words and threat of breaking up. He agreed he would sign himself up for anger management.

I try to go in with an open mind. The weekend comes and starts off okay, we had a few minor disagreements but it was all resolved. We had a couples massage booked for $1000 for 7:30 PM that evening. We started making dinner before our massage and everything just went wrong. It once again was such a minor issue, yet it blew everything up. He began yelling at me and saying hurtful things again. He essentially went back on everything he promised me the few days prior and repeated the same mean things. I end up crying and having another panic attack and we miss our couples massage. I couldn’t believe he just caused all this and ruined our first spa getaway, wasted all that money, and on top of it hurt me so much. After everything he just put me through, I felt numb. He once again apologized after, but I haven’t been talking to him since except a simple yes or no to his questions. I feel so betrayed. I have given him so many chances and I haven’t explained the things he’s done or said in detail, but I have shown him so much forgiveness over the years. I feel hopeless that he couldn’t even keep his word on our 5 year anniversary and hurt me in ways that will be something I’ll never forget. He makes it seem like everything will go back to normal tomorrow and we’ll do our best to make the weekend good. I do this every time; and this time I don’t have the power in me to fake like everything is okay and that he didn’t ruin this.

I’ve been awake since 5 am, crying. We are 2 hours away from home in a ski town. My options are either: - Option 1: Drive home with him in the morning, have him drop me off at my parents and stay there for a few days away from him. I’ve never done this but I feel like I don’t want to be anywhere near him, he scares me after he’s shown this week how bad his anger is. This is the first time in 5 years I’ve seen it this bad. - Option 2: Stay here, do the events he wants to do but just avoid talking to him. I don’t have it in me to fake it. We spent money to be here.

I’m genuinely scared and I don’t know what to do. I’m scared for his reaction to either option. What would the mature thing be to do. Is there another option?