You are frustrated in your relationship and it is a main cause of your anger. As you do not want to leave him, you have to accept him as he is. Let him feel that you have stopped complaining and struggling to get his love and affection. Find out ways to make yourself happy and relax. Learn to live for your own self. Change in your attitude will surely make him to think and realize, sooner or later. And that will be the time when you really put your feeling across him.