If you are not 100% thrilled to bits to be marrying this man, exactly the way he is, without any reservations at all, then don't do it.
Don't marry him hoping he will change. If you loved him fully, you would love him just the way he is, you would not want him to change a thing. He is not just skin and bone - his personality, his quirks, his obsessions, make up the whole of him. This is who he is.
You should also just be yourself. If he wants to be with you he will decide, for himself, what he needs to change or adapt to suit the 'couple' lifestyle. If he doesn't make any changes of his volition because he wants to improve his relationship with you, then it just lets you know that you are not that important to him.
At the moment he is still behaving like a single man, with only himself and his own needs to worry about. You are adapting to him but it is only making you miserable.
If you marry him like this, you will be wasting the years when you could have the chance to meet someone who will value you properly and really love and respect you.
If you are confused, ask yourself this. If you knew for a fact that he would never change, would you still want to marry him? If the answer is no, then you should not marry him now.