Just an off the wall thought. Does your XBone get a reserved DHCP lease, or static ? Either way it would be the same IP address and I'm wondering if you changed the IP would it help ? When you are on BT and on the Hotspot I'm guessing the IP address is different ?
The other change you can try, is to use static DNS on the XBone, either Google's 188.8.131.52. & 184.108.40.206. or OpenDNS 220.127.116.11. & 18.104.22.168
You could also go with a DualWAN router as I mentioned earlier, and have both BT and VM at the same time ?
If you haven't got anywhere unplugging from the wall, or hard resetting, you could as a last resort, try the console reset from the trouble-shooter screen.
To bring up the Xbox Startup Troubleshooter, follow these steps:
1. Power off your console, and then unplug the power cable to ensure that the console is completely powered off. 2. Wait 30 seconds, and then plug the power cord back in. 3. Press and hold the BIND button (located below the Xbox button on the console) and the EJECT button (located on the front of the console), and then press the Xbox button on the console. 4. Continue holding the BIND and EJECT buttons for 10-15 seconds. 5. Listen for two “power-up” tones a couple of seconds apart. You can release the BIND and EJECT buttons after the second power-up tone. 6. The console should power up and take you directly to the Xbox Startup Troubleshooter. 7. Select Reset this Xbox (Keep games and apps)
Remember to chose the option to keep all your games and apps.
The only thing you'll have to do again, is the brief console setup routine, adding your locale, language, profile etc.
Offline System Update Diagnostic Tool on Xbox One: http://bit.ly/1e8bSs3 Network ports used by Xbox Live on Xbox One: http://bit.ly/1dCNLm0 xBox Support: http://bit.ly/1lE2QrK Xbox One operating system versions and system updates: http://bit.ly/1NiJS1j