I've tried talking to him about this stuff and almost left him for it too - I tell him it's unacceptable, I won't feel lesser than who I am, and I won't stick around if he continues to mistreat me or make me feel unspecial, unworthy etc. I don't know how to talk to him or fix it in a way where there will be actual positive change. I think he's never had a real relationship and has a lot to work on in terms of inflated ego, anger issues, and selfishness that's deeply rooted in him. . . This isn't to say he doesn't have good qualities, I feel more strongly for him than anyone i've ever had and I'm completely in love with him, and he does have good qualities but sucks at communicating and i'm not sure if he's being emotionally abusive?
Also, I noticed I myself react to his behavior sometimes in an immature way I wish I didn't by threatening him and acting immature, so it's not all on him.