Hmm..., to be honest, I know NOTHING about this modem/router, BUT, I'm very familiar w/ networking. If I understand the problem correctly, the Tivo is able to establish itself on the network w/ IP, DNS, etc. (btw, gets config info from where, the router?), can process music and photos, only problem occurs when there's any attempt to access internet.
Just looking at this broadly, that would make me think that there is some basic incompatibility (bug) between Tivo and this specific device. It would also make think that the way around it would be to make sure these two devices NEVER talk directly to one another. IOW, if your current config is (assuming "A" is your Tivo, "B" is your modem/router):
"A" <--> "B"
then why not introduce a middleman, logically:
"A" <--> "C" <--> "B"
IOW, assuming some device "C" can communicate w/ "A" and "B", then presumably you could circumvent the problem, correct?
For example, what would happen if you simply introduced a second router for the Tivo, so that it was the second *router* that had to interface directly w/ the Direcway modem/router, and not the Tivo itself?! Your Tivo would essentially be running on a different subnet, with its own DHCP server, NAT, firewall, etc. Then that router would pump traffic down to the Direcway modem/router. What I'm getting at here is, the second upstream router uses NAT, which *changes* the IP stream to some extent, perhaps enough to prevent whatever is causing the *incompatibility* to never reach the Direcway modem/router.
I'm being very general here, because I'm really not familiar w/ the Direcway setup. But that's the kind of solution I would be attempting. I'd be trying to find a way to make sure the Tivo never talks directly w/ the Direcway modem/router. Unless there's just something in the Tivo network stream that always gets passed down and leads to this problem, you would think an upstream router would mask the presence of the Tivo and circumvent the problem.
Not sure that's much help, but all I can provide given what little I know or understand of the problem.
Good luck...
eibgrad