Malheureusement, et à partir du moment où il te remboursent la chambre, je ne vois pas trop quel recours tu pourrais avoir...
Perso, ça ne m'est jamais arrivé (deux fois, tu n'as pas de bol !). Lorsque l'on arrive un peu tard, il faut en revanche toujours prévenir mais, même dans des Relais et Châteaux, il m'est arrivé d'être là pour 20 heures sans que la chambre ait été refilée entre-temps...
Ha si, ça m'est arrivé une fois... La personne qui devait libérer la chambre était malade et a dû la garder une nuit de plus. L'hôtel m'a proposé une chambre dans un autre hôtel, à proximité, pour le même prix alors que cette chambre était au départ plus chère. C'est un service (mais non une obligation) qu'auraient dû te proposer ces hôteliers s'ils avaient été un peu compétents et commerçants.
S'ils annulent au dernier moment, il est possible en revanche que tu puisses demander une indemnisation (eux-même ne se gênent pas pour te faire payer le prix de la chambre pour un no-show de dernière minute).
Bon désolé, dans tout cela, je n'ai pas de vraie réponse à t'apporter, mais je compatis

!