Sweety you need to take a big step back, have a real good look at him, think about who he is as a person.
Maybe write a list of pros and cons about him.
Then decide if he as a human being deserves another chance.
Not just for the cheating, but for every thing about him.
My honest opinion would be to leave, even if that means breaking your own heart.