Who is my husband?

I've always felt like our sex life has been "off". I've also always had a feeling that my husband has an emotional chip missing - he is very self-centered and often lacks empathy for others. 

At the same time, my husband is very compassionate with animals and nature. He is incredibly loving towards me, and he's my best friend. I can trust him to say the right things, to make the right choices for us, to be a stand up guy in any situation.

So, three years ago, when I discovered he was responding to Craigslist personal ads that other men had posted, I was of course shocked and felt sick about it.

His messages to these men were graphic and the language so obscene. The sexual requests really freaked me out. I immediately approached him about it, and he denied everything for hours on end, until I berated the truth out of him. 

I'm not sure how I got over it at the time, it did take a while and I did tell him that there wouldn't be a second chance. The main reason I stayed is that he promised me it was the only time, that he felt isolated (as we had recently moved to a new city), and he promised me he never actually met anyone - only messaged them.

Yesterday, I randomly checked his email. He had been fired from his job the day before and knowing he was under stress and felt rejected, I thought it was possible that he was "relieving" himself by posting online again.

He was. This time, he responded to ads from other men and sent them photos.

I tend to pull an iron curtain around myself, so I didn't cry. I didn't get the sick feeling I'd had the first time. I walked over to my husband, handed him his phone, and he immediately started to laugh and ask why I'd snooped. I said that he knew what I had found, and that I told him there'd be no second chance. I told him he needed to pack, and I'm divorcing him. 

After a long, long cry and promises that nothing had actually happened, my husband packed up and left to stay at his uncle's house. I told him that I need space for at least a few weeks, but I really said that just to get him out of the house. I want to divorce him, although I absolutely couldn't bear to have him fully out of my life.

I'm in anguish over this because, while I know that my own happiness lies in a new start with someone I can trust, I also can't stand to think of a life without this wonderful husband. I don't want him to feel another rejection, or to feel like a freak. I don't want him to be ashamed, I want him to get help.

I want to understand why he was drawn to do this. I want to know if it's something that can be "fixed" - but I'm almost positive that this kind of thing is hard to completely stop doing. 

I know what I need to do, but I don't know what the consequences will be for all involved, and I'm really scared.