Ok, first things first : You're obviously right, it's somehow IPv6 related (no matter how little sense that makes....maybe v10 just didn't even try to use IPv6 before?). Wound up just disabling IPv6 on each machine, and it connects right up again. (There's no way to disable it on the Comcast modem, so sayeth their support docs, and I didn't feel like arguing with the modem to see if they were right)
So...short term, problem is worked around by simply disabling IPv6, as you said.
Now...in the context of "What the hell is actually going on?", did some other testing as well, and it's just...really weird. There seems to be NO rhyme or reason to what combination of "on network" vs "on hotspot" works, other than if both machines are on the Comcast/Xfinity home network provided by their modem...it doesn't work. Everything below was done with IPv6 still enabled.
With 4 different computers, using Phone Hotspot (PH), XFinity Hotspot (XH), and XFinity Home Network (XHN) :
- #1 on XHN could connect to #2 if #2 was on PH or XH, but not if #2 is on XHN
- #2 on XH or PH could connect to #2 on XHN
- Nothing could connect to #3 if #3 was on XHN...but if #3 was on XH or PH, #1 and #2 could connect, *regardless of their network*
- #4 can't connect to anything at all if ANY X is involved. Put #4 on PH and any other computer on XH or XHN...nothing. Put #4 on XH, any other computer on PH, nothing. Put both computers on PH...works like a charm.
- Now it gets REALLY weird...the android client could connect to anything not on XHN (even #4 on XH) so long as the phone is on 4G. Put the phone on XHN, and it can't connect to anything on XHN, but could connect to anything on XH or PH
- Disabling both Windows Firewall and Comcast's firewall at the modem had no effect