Disrespectful SO

My boyfriend talks to me like I'm a bitch in the streets it's so terrible it's only when we argue 😓 I don't disrespect him but I told him to correct the way he was talking to me and he says "I ain't correcting shit dumb ass" he says things like that to me I think it's verbal abuse or maybe it's the hormones I'm 10 1/2 weeks pregnant... he calls me dumb ass tells me I'm stupid tells me to shut the fuck up he does a lot of hurtful things what do I do? I don't want to be a single mom I'm only 17 he's 21... He also hasn't talked to me since 2 this afternoon and said I'm overreacting because he hasn't spoken to me in 8 hours but the first thing he says to me was disrespectful. UPDATE: thank you for all your comments he just text me and told me I'm ungrateful because most girls baby daddy would've left them when they told them they were pregnant and I'm ungrateful because he's still here I should be happy no matter how bad he treats me. And he says he could be like the rest of the baby daddies out here and only call me every two weeks to check on the baby....  I'm so emotionally torn. It's so hard for me to leave because I want my child to have a father.