Most Helpful Guy
First of all, get the thought that it's your fault out of your mind. It isn't. The cheater is the only one to blame. Even if the relationship isn't going well, there's no reason to cheat.
Second: Leave. He doesn't care about you. This happened for months, it wasn't a one time slip, which still is unforgivable, but it shows you that all those months, in his head, you weren't the only girl, and even if you stay and "work things out", you're still not gonna be the only girl.
I'm sorry this happened to you, but you gotta leave, drop this asshole and find yourself a better man.