It sounds like your boyfriend has 2 separate issues. A drug addiction, and an abuse problem. If he were to stop smoking it's very likely that his behavior will get worse. I suggest you contact a domestic violence hotline that can refer you to some support near you. Even if he has never been physically violent. Verbal abuse is very destructive. It's really important to talk about what's going on, it will be validating and it will allow you to start building your self esteem so you can work towards becoming free from this destructive relationship. You can do it.
I think you should punch him in the mouth really hard. He will probably be surprised, people often are when you do this. Tell him that you are calling the shots form now on, and if he doesn't like it you are going to beat him to death when he is sleeping.
I dated a man for 6 months, who uses pot on an hourly basis. He hid using it from me for 3 of the six months. He is prone to mood swings, gets angry, and yells at me. He has no desire to quit, and never will. His life revolves around pot; he works, goes home and gets high and drunk. He can love me one day, and not talk to me in a week, then tell me he isnt ready for a relationship.
I am also with someone who is a chronic weed smoker. He is a public figure in the local community. He "appears" to be a lovable, sweet kind of man in the public's eye, but in actuality he is a narcissistic , verbally abusive jerk. I know I need to break away, after 6 years, I have become extremely codependent on him. The verbal abuse tends and his reasoning tends to worsen when he is high. He becomes a real monster.
I don't think you read the post right == she felt a really low self-esteem because of the abuse she gets from the boyfriend. Yeh you're right he can't fix her issues only she can but how can you recover from someone kicking you down when you're already down???