Every time I think I've made up my mind to leave, I miss him and worry about him and go back
Trust me on this one - like, every time I have felt like that, in a relationship, wondering if I should end it or not, and then ended it anyway - I have felt f*cking -relieved- after doing the breaking up.
Even my psycho ex was relieving to leave, even though I have PTSD now from what he did.
So why oh why can't I seem to leave this man?
Biology!!! I swear! It's just your brain chemicals and shit, likely combined with the ways he's gained control over you. It's such a huge hurdle to get over. Take a leap of faith though. If he's controlling you so much, it's definitely a bad idea to stay. You'll feel -relieved- when you leave, because you'll have freedoms that you don't get to enjoy right now. Guaranteed relief right there! - and I bet there will be much more relief than just that.
The problem is - you can't have reliable judgement when it comes to the person you're in a relationship with. IMO. You have to depend on other people, to make sure the person you're with is good for you. If a bunch of people are all telling you to leave - even if it feels really hard to do, even if it feels wrong - you should leave for your own good.
I don't think there ever is a good relationship, where you talk about it, and people say "get out!!!"
You don't have kids, you don't have shared finances - perfect. Get out!!! It'll be simplified.
Don't stay in that horrible relationship. Things are just going to get worse.
They have got physical on two occasions now and I'm still bloody well here!
!!!!!! YEP!!!!!! things are just going to get worse
Holy shit get the f*ck out. Do you really want to give yourself like, years worth of traumas to have to work through? That's the start of it. He hit once, he hit twice, he's damn well going to hit you again, and maybe he's gonna hit you a whole lot harder. I'm telling you - get the f*ck out. ONE single hitting is grounds for leaving, period. No matter what. Getting hit one single time means you need to f*cking leave them.