I'm online!!!! I'm online!!! YAY!!!!
jmm saved me. He gave me excellent advice in a comment to my previous entry.
The fact is, I had already been alerted to the fact that cable modems sometimes cached the ethernet card's address for whatever reason, and tried that debugging path by turning the modem off or by leaving it unconnected for extensive periods of time, but it hadn't worked so I'd given up. I hadn't considered trying to change the address because while I had seen that option in the ifconfig manpage it hadn't gotten through my scanning as something potentially useful, and also because I'd eliminated modem caching as a cause of the problem.
When jmm suggested I try setting my Linux box's mac to that of the win laptop's pcmcia's mac to fool the modem I did it mostly out of despair, because it was 3 in the morning and I really didn't know what I could try. To my utter surprise and delight (and at first confusion because I was watching the tcpdump which suddenly filled with various sorts of crap as my firewall was intentionally down while debugging so that I didn't immediately see dchpcd return success) I was connected!
As it appears, the modem is built (or set by the ISP) to cache very aggressively in order to prevent people from using their service with multiple computers. It keeps its cache between switch-offs and for more than 14h, the longest time I left it without being connected. There must be a way to make it forget things but it's not in the docs.
So enormous thanks to jmm for pointing that out at the right moment. His email address would seem to indicate that he's co-author of the Wolf book, which would make me doubly-indebted to him for the excellency of his teaching.
The next few days are going to be hectic with a huge backlog of email and things to do, but after being cut off from the net for so long it actually feels good to have more to do than I can sanely fit into a day. It's nearly 4 in the morning and I'm so excited I don't know how I'm going to sleep. To be honest, for a moment I'd nearly given up.