advice

Hi everyone! My names Vanessa 
I'm new to all this.. and i just need some advice please don't judge me..
My boyfriend and I have been together for about 2 years. Our realation was good and all them he got distant and I cheated .. we broke up then he took me back but now he treats me really bad sometimes yells at me pushed me around accuses me of all sorts of things calls me a bitch hoe.. its great sometimes I feel like he chooses everything before me. He always makes an excuse to not pick me up. I work down the street from his house and he never wants to walk down to pick me up for my lunch. If I don't go to him we don't hang out... 
If I don't want to have sex he just accuses me of having sex with someone else he says "if I'm not fuckin you someone else is" 
I just don't know what to do the obvious is to leave him but I got so attached .. it's just to much I need advice