He is a big boy. He is making this CHOICE for a reason. Maybe, just maybe it is a thing call love. He loves you unconditionally. Which makes me think of two questions.....
1) Would you do the same for him? If he was totally messed up - would you stay with him? Forever.?
2) Will you accept his love?
Nothing else matters (in my opinion). To me - it sounds like you have a keeper.
and by the way - CONGRATS to you