Well honey in all honesty, this guys just sounds horrible. I know this is only your side of the story and you could be a little too insecure at times but that's doesn't explain any of his actions that you explained here.
I think when it all comes down to it if you want to fix this problem permanelty you'll need to do something about him and that means get rid of him , he is doing no ogod for you. But if you don't go that route the only thing you can do is try and do the things I suggested above and just deal with him being such a jerk!
If you can't handle the thorns, don't crave the rose!!