OP is simply an example of no good deed going unpunished. Properties are free to grant whatever customer concessions they wish. Those are neither guaranteed nor the usual course of business.
What OP sought and was not granted was neither promised nor guarantee. He simply did not book or pay for it. End of story.
The solution to this stuff is for properties to stick to the program and never vary from it. This stops the "but, I got it last week" silliness.
W2BRSPF2BRS (Want 2-bedroom suite, pay for 2-bedroom suite).