1) I offer them something else and if nothing is available then they just have to deal. I try not to ever offer it again. If this happens more than once, I just stop inviting them over.
2) You're fucked. ( sorry I have nothing positive to add here )
I do get a little butt hurt when someone complains about something I've prepared for them , but everyone has a different flavor profile they like. I try not to go off the wall with anything crazy ( flavor wise unless I discuss with said guests). What does set me off is how they approach the matter.
People being flat out dicks because they don't like it does not fly with me. Someone saying how they wished it was different or that it didn't quite sit with them is fine. I've done that myself.