my boyfriend hit me😔

My boyfriend hit me for no good reason he punched me in my lip. I'm so angry I couldn't hit him back and his 13 year old niece witnessed it. I feel for her because she looked so scared and surprised and then acts as if nothing happened. All because I rejected lean and said I don't even like lean he got mad bc I said it when his parents were in front of us and he said I was hit with it and didn't want his parents to know he had it on him. But after I said that he punched me in my mouth twice. This is the first time anything like this has happened I don't know what got into him. We've been together for a year and half now. Please help I feel so lost and confused right now. My lip still hurts and the swelling went down but I can't believe he did this to me. By the way we are supposed to go to prom this Thursday. 
P.s he also paid his share to come to prom with me and his mother is so sweet and nice to me. She asked me why I was holding ice to my lip when we were in Applebee's and I made a silly excuse he was sitting right next to me and I was scared. Please help I love his mom but I don't want to be with him