I do recall HT stating around the release of 1.10 that the UDP sensitivity had been tightened.
You need to open ports 1999-3000ish to inbound UDP traffic and map it directly to your PC.
Linksys routers have been historically a nightmare. They try and do some sort of auto-UPD forwarding based on outbound traffic patterns. IE they try and learn what is going on. So usually they get it right half the time, then drop the session later on.
Those people that are getting the 'switching to tcp' message just before a CTD or Disconnect, its most like that your connection between HTC and yourself has dropped the ball entirely. IE, a router is resetting somewhere. And the switching message is just the first step in your disconnection.
The thing to remember here is... its the NET. It was never designed to play games across
If you want a good reference on how well HTC have their setup worked out, I'm in NZ, about as far as you can get from them. I have a regular 200ms ping (even at peak times), and on average get two discos a week - usually due to router resets along the path. I have a 128k DSL connect, using an internal PCI card, on a pc running W2K and Winroute software, with my gaming PC connected via 100mb ethernet.
If some sheep-shagger in NZ can get good stable connects then I'd say HTC have a fairly good connect to the net