A possible solution might be to replace many "update" methods with one.
class HotelRoom {
// fields and constructors
void apply(HotelRoomPatch patch) {
// logic of update
}
}
interface HotelRoomPatch {
Optional<String> name();
Optional<SaleState> saleState();
// etc.
}