Another good read for this situation is the five love languages. It sounds like you both care about each other, just have a very hard time expressing it. As some may point out to you affairs, are usually a symptom not the problem itself. Showing him love in his language may be all he needs to feel respected and loved enough to never stray again. It sounds like he may be truly sorry for his mistake, but is not sure whether he will get his needs met from you if you forgive him. Thus one step in one step out.