Need some advice..

Please no judgement ... my boyfriend & I have been together 6 years. We have been toxic & agreed to work on our issues for a better relationship. Then we Found out we were pregnant, I’m 19 weeks 4 days with our little boy(: anyway, tonight was really bad. I asked him to do the second load of laundry since I can’t go up there bc it reeks so bad like litter (since he never changes the liter box until I beg). He told me he wanted to play Xbox first, I asked him if he would please do it before since it was already late and I didn’t want him to forget or fall asleep. He told me I was annoying & to stop talking to him, that he’d rather die than listen to me talk anymore. Obviously that hurt my feelings, & I started crying. He then told me I should leave the house etc etc. I’m just crying asking why he’s being so mean. I asked him to just apologize & come to bed... he told me to leave him alone but I hate going to bed on bad terms.. so I’m crying say please just come lay down.. he told me to stfu, that I make him want to kick me in the side of the head, and then he spit on me & threw a pillow at my head:( I don’t know what to do.. I just needed someone to talk to. obviously I know no one Should ever be treated that way especially when pregnant. But I love him so much I can’t leave.. have no where to go, no money, and rely on him for everything 😭 this is the worst situation I’ve ever been in and honestly feel so depressed. I do have a job I just started.. but I don’t make much. Our relationship used to be so perfect & he used to be amazing. I love him so much & I think part of me is afraid he will find someone and give them that love that I deserve.