does this structure work equally well when speaking to the desk clerk at a hotel and also for asking an acquaintance about his/her room?
No, this works only when asking about a room at a hotel.
«Є» emphasises the fact of existence, 'having'. You're not asking is they have a cheap room, you're asking if they have a cheap room. The main thing asked is whether they have a room or not.
Since in the situation with an acquaintance you already know they have some room (after all, they live somewhere, right?), the main point of the question is whether the room they have is cheap or not. So, «є» is not the main point of the question, and «є» is not used when it's not the main piece of information.
Now what if something is more abstract. Is this construction used if you want to ask "Do you have fun learning Ukrainian/languages? Do you have time to eat lunch? etc.
> Do you have fun learning Ukrainian/languages?
Actually, I don't think Ukrainian has a direct equivalent of 'to have fun'. I'd ask something in the lines of «Вам подо́бається вивча́ти украї́нську/мо́ви?».
> Do you have time to eat lunch?
Yes, you definitely can say «У вас є час, щоб пообідати?»
Racja,można się zdenerwować :/ Niestety ani po ukraińsku ani po polsku nie ma odpowiednika angielskiego "a" :/
W angielskim jest potrzebne, ale po polsku czy ukraińsku można się obyć bez niego (na moje szczęście, bo strasznie mi się to wszystko myli).