"up to" two EHCI could mean one
Thinking out loud, you've no usb keyboard, no usb mouse connected, nothing sharing the same usb channel, that might somehow cause it to use USB 2.0 speeds for reading but kick/waffle to USB 1.1 speeds for writing? A laptop so probably not.
Did I read that right, it does the same thing copying from internal SATA to external 1394 firewire? Same as usb? Hmm. Well some chipsets serve a dual role of usb and 1394 controller, so it might still be a controller issue. OR, or, it could be the usb/firewire logic board in the drive enclosure is lowsy.
Copy test from external to external aside, that muddies/complicates things, why don't you first test internal to external, just one, and external to internal, on your laptop (which you seem to have done), and THEN try the same tests with that drive connected to a different machine, a desktop computer with usb 2 and/or firewire that works at the full speed in both directions for the drive said desktop already uses. THAT would help diagnose whether it's a laptop issue or an external drive issue.
What drivers? Well, you might try uninstalling the USB controller/hub devices under Device Manager and then let Windows redetect and automatically find drivers using Windows Update (requires a working internet connection)
Alternatively I'd say try the chipset drivers from the Dell site BUT INTERESTINGLY they only list downloads for Windows Vista in the main category so I gather it was preleaded with Vista, intended to be Vista, and you chose to redo it as XP instead. I guess Dell support may cop-out on your problem. Well, I do notice the Intel chipset driver reads Vista32/XP
http://support.dell.com/support/downloads/driverslist.aspx?c=ca&cs=cabsdt1&l=en&s=bsd&ServiceTag=&SystemID=XPS_M1530&os=WLH&osl=en&catid=&impid=