I’m over his shit

My bf of four years went 4 months without having sex with me. A few weeks ago we had sex. Today he said we would have sex later after running errands. I come home and shower and shave my whole body and he says “let’s get this over with” so I lay down and he starts rubbing my clit and he rubs for like 10 seconds and it’s not very comfortable for me the way he’s doing it so I move his hand and say “be delicate” or something like that and he throws a fit and says “that’s it I’m done. You can rub yourself and turn yourself on.” Obviously it upsets me and I’m like “really?” Then he tells me that I “know” that he hates it when I grab his hand like that and that he’s done. So we don’t end up having sex and I am fucking pissed. I get upset and literally start to cry and he calls me a bitch and then says that we won’t have sex now for two days, all because I moved his hand so that I could move it to a place that actually felt good for me. I literally shaved my whole god damn body so I would be all soft and smooth and this is the shit I have to deal with. I’m fucking done. Am I wrong to be upset?