I think the most common way they detect you're using a router is by examining the
TTL of packets coming from your connection. Each router that a packet travels through decrements the TTL. Since the common starting TTL is 64, if the hotel wifi sees packets coming from you with a TTL of less than that, they assume you've got a router between you and them. If your router allows you to set TTL manually you can set it to 65 and I bet you won't fall afoul of their restrictions.
The popular GL-inet routers (which run OpenWRT) can do it with a manual firewall rule. In the Luci advanced firewall rules box you'd enter:
Code:
ip6tables -t mangle -I POSTROUTING 1 -j HL --hl-set 65
ip6tables -t mangle -I PREROUTING 1 -j HL --hl-set 65
iptables -t mangle -I POSTROUTING 1 -j TTL --ttl-set 65
iptables -t mangle -I PREROUTING 1 -j TTL --ttl-set 65