I think not, because an ejo is more like a place where something happens -- the hotel itself is an ejo, but it doesn't stand on an ejo. A meadow is not an ejo, for example, unless you consider it as the location of a festival or something. A bare plot of land is not an ejo unless something is happening on it.
I think not, because that would sound like "next to" a beautiful place -- "at" in the sense of "very close to" but not "on" or "in" the place itself.
A much better, but not literal translation that would be... "That hotel is in a good location", remember the old Real Estate slogan for a good house / hotel investment is "Location, Location, Location"!