Is it better to stay or leave?

Okay so i have been with my boyfriend for almost 3 years .. will be 4 in febuary. I am starting to lose happiness because he honestly treats me like shit. We use to live littreraly around the corner from eachother and saw eachother everyday, when we lived close he talked to other girls, hid things from me on his phone, talked to my friend behind my back. And now he had moved almost an hour away and he never lets me touch his phone and right when i get there he always wants to have sex . Having sex is perfectly fine but if we get into an argument he calls me a whore and slut and loose dirty, for no reason which i clearly shave and clean my shit b4 i go see him anyways, and last but not least i am not aloud to have any social websites . Like facebook , twitter, insta which is no problem BUT HE HAS THEM ALL AND DONT LET ME GO THRU THEM ... but i dont know what to do i could go on and on .. i just need someone to tlk to.