How do I leave?

I love my boyfriend with all of my heart. I really do. We're pregnant, 18+6 to be exact and I have never felt more lonely in my life. It's like since we've found out he's become an asshole and super distant and I just don't understand. I do everything for him, especially financially. He has a son and we both take care of him although he does not live with us. I help pay his child support, buy clothes for the kids, and help him pay his child support when he needs it and I never make him feel less than because of it. We're supposed to be a team. But I just feel... used, and I have told him that, but he just laughs and says that I'm crazy. He puts smoking weed and his family over me. I am sick as a dog and he still decided to leave to go smoke, and has been gone for over four hours and when I called him, he got upset so I hung up on him. I love him... I thought that we would spend the rest of our lives together but I just want to be done. I want to be happy and raise my child to be happy. But how??? I know that I will have a break down because we've been together for so long but I am tired of crying and being unhappy all of the time.