In most if not all cases, actions speak louder than words. So if he treats you like crap but then says that he loves you, he's probably just trying to sweet talk you into forgiving him and allow him to get away with how he treats you. In a healthy relationship, neither party should treat the other person like crap. It doesn't matter how many times they say that they love you, that they sweet things to you, the amount of the gifts that they give you, and so on and so forth. What really matters is how they treat you and how they make you feel in the relationship.
So honestly, I think you should just leave him. If it somehow turns out that he's actually in love with you but just has a pretty crappy personality, then he should show you that he cares about you. If he doesn't go after you, then you know that he isn't someone truly worth your time. I'm not saying that all guys have to be knights in shining armor; I'm just saying that this particular guy needs to do a lot of work to show that he loves you if he really does because of the way he treats you. And if he doesn't, then just move on and find someone else better because I know you can and you know you deserve someone who treats you with respect.