"Also, I felt awful letting someone do that and doing nothing back (I couldn't even contemplate that at the moment) so can't really understand how he's done it the opposite way round for so long."
Because he doesn't think like you! You are a nice person, he is not. You could never just let someone try to pleasure you for years on end without caring a bit about how they feel. He can and did.
I don't doubt that there are reasons that he is this way. But that doesn't change the fact that he has treated you appallingly and you are unlikely to ever be happy if you stay with him. You are a strong woman to have borne this for so long, and I don't doubt you could bear a few more months or years, but you need to fight against the urge to do so - what a waste of your life.
There's a whole world out there waiting for you to discover it, and it includes real, loving human relationships.
This is urgent! I think you would be a great mum; you have such a nice, caring nature. If you want to stand any chance of having a family, you need to leave this man, spend some time recovering and getting to know yourself and what you want, and then meeting a nice man to share a warm, loving relationship, and raise kids with.
You're 33, right? Sorry to be blunt but you really don't have much time. Fertility drops considerably in your 30s, and although people do have children in their 40s, you really can't count on it. It's not guaranteed at all. Sadly many women who wait until their late 30s / early 40s find out that they've left it too late.
This man now stands in the position of robbing you of something which you can never get back - your fertile years, and the chance to have children. You need to leave NOW.
I hope that helps. This kind of thinking did help encourage me leave my ex. I came out of a relationship with an abusive ex when I was your age, and just a few years later I have a lovely DS with my BF who is a lovely man, with a heart of gold, and my DS is just wonderful. We have fun together, DP cares immensely for me and our boy, and I look forward to coming home at the end of the day.
You have no time to waste! Start making a plan for how to leave.