I feel so stuck...

I don’t have anyone I can talk to so I’m just venting on here I guess. I’ve been with my fiancé for almost 5 years now. In the beginning he was so nice and such a gentleman. I always wanted someone that loved me as much as I love them, someone I could tell cared about me and treated me right. He was what I had been waiting for! Almost 2 years in, I started seeing a different side to him. He would yell at me, get anger over little things, and says so many nasty things to me. He would always apologize after and say how much he loves me and felt bad. I kept telling him if it happened again I’d be done. Obviously I stayed. Today we had another blowout. It’s always the same. He says something rude or nasty, I call him out and say I don’t appreciate it, he gets mad that I’m mad and then it turns into a whole fight. This time it was about his driving. He was parking and started getting really close to a car so I kinda of braced myself and said “babe!!”. He started yelling telling me to get out, he should’ve dropped me off at home, I should’ve stayed home, all types of stuff. I was so confused by how angry he got!! It’s so embarrassing. I can’t even talk to him when he’s like this, I pour my heart out. Crying, telling him how I feel, and he just stays angry. He blames me, or makes excuses, acts cold and distant like he doesn’t care, it’s such an awful feeling. I feel at a loss. I love him but I don’t want to be with him. I know how he treats me isn’t okay. I just feel stuck. Soooo stuck. When things are good it’s sooo good. I know you should never wait for someone to change, but I keep telling myself that if he just treated me better everything would be perfect. I just I had someone I could talk to, but I don’t have any close friends and I don’t want to tell my family about all of our problems..