I don't believe he deserves to become a citizen based on marriage to me because of moral grounds.
Now I find he has recently been keeping company with a prostitute even though he says he has never slept with her.
I would read over these two lines because I think they are the key to your answer.
My advice is to divorce him and move on. If this were a marriage between two citizens, the stakes would be high as well and I am sure, in time, he will be able to become a citizen as a divorcee. It might just take him longer