please advice needed ASAP ..

So I'm engaged to my fiancé of 3 years, we have a 11 month old. We both work, have a place, everything together. I love him dearly 💕however he treats me bad. It's like when we're good, everything's great but when bad, it's horrible like arguments. He starts them at time, calls me all types of names, bitches, whore, point out all my insecurities & use them against me in arguments. He's hit me plenty of times, including while pregnant but despite all that I've been through & there's plenty of more but I love him, I still love him bc I know that he can be a great guy, he just anger issues. However recently a ex of mine reached out for me, he's been looking for me the last 3 years to rekindle things, but I've obviously moved on. We broke up bc I had lost our baby, had a miscarriage & it hit him hard to the point to where he broke up with me. He admits that was immature but overall we had a amazing relationship, no arguments whatsoever.hes expressed to me he wants to be w me & ive always loved the fact he accepted my child as his own, never bashed me for it like my fiancé does. Question is what should I do? I feel bad for talking to him bc I still love my fiancé ... & we have a child. What should I do? Stay w him or give my ex a chance again ...