This is a tough one, no doubt. I have been on the other end from where you are standing. I hurt someone terribly, someone I love with all my heart. I hurt her like you've been hurt.
In my case, I was unaware of issues I had, issues that made me go looking for happiness somewhere else rather than inside me. So I cheated on her, and so on.
I have asked her to take me back. I have asked her for the chance to EARN her trust again. She still loved me, through all of it, but did not trust me at all. She could no longer trust me not to do it again, not to destroy her life all over again.
We have been together over 5 years now, since I cheated and ruined her life. It gets better all the time. Yes, there are still days when I think she would have been better off forgetting me, and she has those days too, knowing it would have been so much easier to forget about me.
But love is a strange and awesome and tortuous thing. So we are still together. Simply put though, you can look at it this way... if you say no, and put him behind you, you won't have a chance to rebuild whatever you had before. If you give him another chance, ASSUMING he really puts in the work to fix his issues, and that you are also willing to WORK on it, then you have that chance to rebuild, but you can always end it later.
Yeah, not that simple, but that's one way to look at it. I wish you luck either way. I will say this... if he's not willing to work through whatever issues made him hurt you, and if you are not willing to work through all the trust issues that will be present from now on (or whatever issues other than trust), then walk away now and start healing.