What you are experiencing is either the hotel manager verbally committing to rooms and not logging them into the computer to try and skim money, or they had something happen that impacted availability (no hot water, housekeeping couldn't turn over rooms, etc)
I think in the first case, they gave me a refund and I rebooked another through hotwire last minute. In the other case, the area was very booked up and I had to pay double to get a comparable room. So I had to send hotwire the invoice and they refunded the rate plus enough to cover the more expensive option. Both times was a huge inconvenience but that is sort of the price you pay for cheap 3rd party bookings.
On the receiving side, this is not pleasant, but not the end of the world. On a business trip I can get a human travel agent on the phone who can find an available room and if it means a $100 taxi bill each way to get to a nearby town, so be it.
By booking with the actual hotel's web site, you at least know you have a room. If the price of that certainty is a little bit of extra UX friction (or making a phone call, which I'll soon be able to delegate to an AI anyway), that sounds just fine.