Hello, I'd like to help you with your problem.
It sounds like your partner has become verbally abusive. To call you selfish and to expect you to always do something for him is a way to take out his issues on you and to make you feel responsible instead of looking at his own behavior problems. No one should be made to feel bad for not doing more for their partner nor should anyone not get treated well by the person they are with.
If you are feeling like you are walking on eggshells, that is a common sign that your relationship has become abusive. He should be responding to you with understanding and kindness, not berating you and making you feel something is wrong with you. You should instead feel taken care of, loved and safe, not hurt and scared to be yourself. Your relationship is not just for him, it's for both of you.
It is very possible given your description of his behavior that he may have Narcissistic personality disorder or at the very least, some traits of Narcissism. Anyone who expects their partner to wait on them and always do things for him but rarely give back or treat their partner with respect is thinking of themselves only.
The first step is to talk with him and let him know that his behavior has become hurtful. Let him know that you deserve to be treated with respect. Ask him if he is aware of how he is speaking to you. If he is not, then he needs to get help for his problems. Suggest he talk to a therapist. His doctor can recommend someone for him. However, if he refuses which is likely if he does have Narcissism or simply lack insight, you may need to consider your options.
If you stay, the chances that he will change are slim. He needs to realize he has a problem before things can change. If he won't do that, you may need to consider separating from him, even temporarily until he deals with his problems.
The second step in dealing with how you feel is to see a therapist. Talking to someone about what you feel can not only provide much needed support, but it can help you sort out your emotions so you are more clear on what you want and what you need. To find a therapist, talk with your doctor for a referral. Or you can search on the internet for therapy on line or local community counseling centers.
At the very least you deserve to be treated better. It may be that you are struggling with self esteem issues which cause you to feel as you do. A therapist can help you sort out what is happening in your relationship and how you can cope with it. And you can work on your own self esteem so you feel better about yourself. When you value your own needs, your partners treatment of you will become unacceptable. Then he can either decide to change through getting help or you can move on.
Also, consider learning more about abusive relationships and how they affect you. Here are some resources to help:
Should I Stay or Should I Go- Lundy Bancroft
I hope this has helped you,
May I please request that if you find the service I provided helpful at all that you rate me with three or above? Your rating is the only way I am reimbursed for my answer. Thank you so much!