I need some serious advice, please don't be harsh!

Long story, here it goes.

I have been with the same guy for 6 1/2 years & we have a 5 year old son & a 7 month old daughter. Well when my son was 6 months old I had had enough of my boyfriends shit. I packed my stuff & my son's & moved to my grandparents. After 2 months, my boyfriend changed & promised me he would be a better man...so I went back to him. After 3 weeks, he went back to his old ways...not giving me any money ever, & when I asked he would yell at me. I wasn't allowed to do anything without him. He called me names all of the time. Got mad at me if I didn't clean the house or have dinner cooked for him. He would yell and scream at me for no reason. Fast forward to about 2 years ago, I found out he was taking pain pills & Adderall. I tried to help him get off of them, but it just didn't happen. He doesn't take pain pills as much now, but he still takes adderall. He doesn't brush his teeth. He takes a shower maybe 2 times a week. He doesn't help me around the house or with the kids. He doesn't do anything with the kids. & he has even pulled my hair, choked me & threw me up the steps when I was pregnant with our daughter. Finally about 2 weeks ago, I flipped my lid & told him I have had enough. Ever since then, he has been doing everything he is supposed too...& being nice to me but I told him it's too late for me. I love him as the father of my kids, but nothing more. He has always been the one who worked so I don't have a job to support me or my kids...but I am willing to get one!! I have had a few jobs but he has made me quit them. We are stuck in a house together & just looking at him makes me fucking sick! I cannot stand him. I also started talking to someone else...I want so bad to tell my ex but I'm afraid of them getting into a fight & things just getting so much worse than they already are. I am SO lost. I don't want to be with my baby daddy...I want to be with this other man. Does anyone have any kind of advice? It would be very much appreciated!