If you've got the time you can do it all by running Linux on the gateway between the internal hotel LAN and the Internet. It's already got traffic shaper support to allow you to limit the maximum available bandwidth per client. Measuring bandwidth used is simple as well.

The time consuming part would be to create a nice simple interface to it all really. A web interface using PHP or Perl would be the easiest for the staff I'd guess.

It's a lot of work combining all the individual parts however and it isn't a prepackaged solution which sounds like what you want.

- Trevor