in the past when you guys had a fight. I don't believe it was always his fault, right? I'm not sure how you can change your situation, maybe learn how to drive and be more independent.
I've seen this type of guys before, when they feel you have no where to go they start to treat you badly. But once they see you don't really need them, they would crawl back again.
I know someone that was beaten by her hu*****and before she knew how to drive and had a job. Now he kisses her butt a lot even since she had a decent paid job .