I've been following a hunch (for which some clues have appeared on these forums earlier). I have been trying to keep all USB V1.1 devices off my pi. Both 12M and 1.5M speeds. Trying to use only USB2.0 (480M speed).
But hold on. Keyboards and mouses are USB V1.1 (usually?? always??). They are hard to dispense with. And the pi seems stable enough with simply those two connected, all else (read power) being equal. The troubles seem to start as other devices (V1.1 and V2.0?) are added to the USB system.
OK, I've set x11vnc self-loading. So I can run headless from VNC on my (mint debian) PC. I tend to set my main adls/wifi router to assign reserved IP to devices I know about, so the pi comes up as a predictable IP address.
So: NO PHYSICAL KBD, NO MOUSE on my pi.
Test my 5370 / rtl2800usb wifi adaptor (brand "N" from ebay). Installed wicd. Works clean. Wifi auto starts if the lan cable is out, so I now have TWO ways to run headless. Success #1. (Prev impossible.)
Test M5632 host-to-host Link cable (Ali Corp 0402:5632). 480mA - so MUST go on the hub. It loads, using driver cdc_subset. I assign it an IP using ifconfig (different subnet). Plug other end to my debian PC. Again use ifconfig to assign it a complementary IP. And wow, vnc and samba can talk over the cable to my pi. Success #2. (Prev impossible.)
Test #3: Huawei E169 wireless broadband. Installed wvdial and usb-modeswitch. Fetched SAKIS3g as a clumsy and slow "gui" to get dongle running, and wow again, up it comes. Success #3.
These were all cases that would lock up my pi or drop mouse or lan or other device.
Where to from here? Try many of these all together. Try other devices. Then go back trying to re-introduce V1.1 devices. Maybe it's all a false trail, but it has shown promise so far. Not enough hours in a day. Anyone else have similar findings?