He doesn't cheat on me but he makes me feel like shit...

The title is a saying I've told myself over the years to get by. Me and my boyfriend of four years just broke up, or were on a break. I have been unhappy for weeks. He's a great dad to our 3 year old son but I can't take it anymore. I feel like I'm having to raise him a second time cause his mom coddled him. His whole family gives in to his tantrums when he doesn't get what he wants and I guess he gets mad that I don't. In his eyes hes never done anything wrong..its always "i havent done anything to you" or " its your fault im acting this way" We were gonna break up before we found out I was pregnant but we didn't because his family told him we "had" to be together now. They think it doesn't matter how unhappy you are mom and dad are supposed to be married and never leave. He's always telling me stuff like we wouldn't even be dating right now if it wasn't for him...when we argue. He expect me to forgive it all and never talk about it again. I can't do that. Who could? There are so many red flags...but he doesn't cheat on me. I feel like he does love me but he loves himself more. He lashes out and says things like that to me bc he's scared of being alone. Idk what to do. I know I'll never find no one, but that doesn't mean I should be unhappy. I can't get the strength to stay gone. I left the house now I'm just riding around and parking places. I don't have no where to go, so my son is with him. I don't have family nor gas to go to a woman shelter. The closest one is over an hour away. Hopefully I won't get in trouble for parking my car somewhere tonight and sleeping in it.