have your cake and eat it too
Alone it sounds normal but doesnt make sense in context because its supposed to be
eat your cake and have it too
Because the idiom is supposed to mean that you can't eat it and somehow still have it. The first implies you got cake and then were unable to eat it which doesnt make sense because thats literally the point of cake
Wikipedia:
you cannot enjoy two incompatible things at the same time; once you eat the cake, you no longer have it. It highlights the idea of trade-offs or making choices in life.
Apparently have is supposed to be synonymous with "keep" but language has evolved