Can’t break up

I am in a relationship with a person who is, although older than me, is very immature. He spends all his money, even though he makes a lot. He does not think about or plan the future. He just likes playing video games and drink. We don’t see eye to eye on many life principles and values. I can’t stand it anymore, but feel guilty about leaving him. I understand that I cannot hurt him, only his thoughts can. But I am still afraid of hurting his feelings by leaving him. I don’t want him to suffer.
I left him at some point, but kept talking to him to make sure he is doing fine. I know I am acting like a mother to him, but I feel like I can’t do anything. I feel like it would be mean and unfair to leave him, that it would mean I am a bad person.
I got together with him again when I found out that he had a health issue. I knew that he needed help and that he had nobody else to take care of him. I am not happy in the relationship, but also am not happy when I know that he suffers.