The carrier has a cap for daily tethering. Once the cap has been exceeded tethered traffic will get a really low QoS class (like 95% packet loss) but the phone can still get Internet at a reduced speed. I am not sure what method the carrier is using to detect tethering (ISPs can use so many ways to detect NAT, especially when DPI is used).
One way around it is to run a socks 5 proxy server through ssh dynamic port forwarding on the android phone, and let clients use the socks5 proxy on the phone. It seems existing ssh clients with dynamic port forwarding only listens on 127.0.0.1 so it's impossible to connect from another device. Is there any easy solution to bind the socks5 proxy to the wlan0 interface?