I cheated on my long distance boyfriend

I know what I did was wrong and I will get a lot of backlash for this. We have been in a long distance relationship for 4 months.

I cheated on him three times already. I told him the first two times and I told him to break up with me, but he wouldn't. I told him he deserves better but he doesn't want to. He says he forgives me and it would hurt him more if I leave him and believes that we can still work it out.

The guilt is actually eating me up and I feel bad for him to forgive me both times. This third time I can't bring myself to tell him because I know it will hurt him. And none of the guys I like more than him.

I do care about him and I want to still be friends with him when we do break up one day.