iPhone hotspot is not your typical wifi network. This doesn't apply to just the iPhone. Most mobile broadband devices or hotspots supply the same type of connection. I won't go into detail but basically up to "x" number of devices can connect but it doesn't mean these devices can talk to each other in certain ways. Some devices deal with ad-hoc connections in different ways and some can't even communicate on an ad-hoc connection.
Easiest way to solve you scenario. Not the best though.
Get yourself a printer that supports AirPrint. Get yourself a wireless router that is real cheap. Nothing fancy. Setup the wireless router with an SSID such as "Printer Network" or something distinguishable. Connect the printer to this network. Whenever you need to print something. Plug in the router and printer, let them setup and connect. Connect your iPhone, iPad or pc to the printer network and print your files. After, go back to your Internet network and continue surfing. You don't need Internet on your printer network, you just need the wifi service for device to device connectivity.
You can leave this plugged in all the time in a closet or something or only set it up when you need it. The devices will retain their settings. Also you don't need any wifi security key on it. (WEP - WPA). As these devices will never see the Internet.
If anyone needs help with a scenario like this or other possibilities for mobile printing, feel free to contact me at rmeaux (at) icloud.com