Do I Deserve Better?

So I have been dating this guy for over three years. Things were great in the beginning and there was so much love. However, for a really long time now things havent been so great. I still love him but I feel that the relationship has become toxic. Slowly over time, he called me many names like bitch and cunt; now he mentions that I am fat and need to work out because I dont look like I did in high-school...I was 96 pounds. I am in college for a medical degree in cardiovascular-I dont have time to work out after piling on class, clinic, and studying. The little time I have that is free is either for chores around the house or to hang out with him. Working out is not really an option since I am busy and usually very tired at the end of the day. Now I am 112 pounds and he calls me a pig, a fat bitch. He says he cant be seen with someone who is fat and ugly. It should be obvious to leave his ass but I still love him and hope he will fix things to be right; I also keep excusing it for his autism making him have no filter but that is starting to be a lame excuse.

He also has recently been invited me over only for sex and calls me these names when I turn him down because I am exhausted or just want to have a conversation with him-which he says is stale and boring since I live a boring life.

Any thoughts? I feel overwhelmed with this and probably ignorant for being on the fence about things.