Что делать? Если он вам действительно дорог (такой какой он есть теперь), то срочно начинайте "работать" с ним. Не бойтесь быть навязчивой при этом. Заставляйте его меняться в лучшую сторону, по всем этим направлениям, которые вы перечислили. Если будет сопротивляться, ставьте ультиматумы: или он меняется, или вы уходите от него. Как вариант - сексуальный шантаж ("не будешь меняться - не получишь от меня секс!").
Если же он вам не особо как дорог, - то имеет смысл держать свои глаза открытыми для того, чтобы в будущем присмотреть себе другого молодого человека (более адекватного, чистого, аккуратного, и так далее).