Try Safe Mode (Do you have this problem in Safe Mode?). What are your boot times like if you boot into Safe Mode?
Is your Bios up to date? Try setting it to the Default.
Try running the compatibility checking program again from the XP CD.
Try running ChkDsk from within the Recovery Console if you haven't already.
Part of the Bootvis program should produce a graph of the time taken for drivers and programs to load. Can you use that to see which program or driver is loading slowly?
To get further information about any errors look in your Event viewer.
Look in the System or Application folder. You can get to the Event Viewer via right click My Computer icon and select Manage.
Any errors logged in the Event Viewer can be expanded by double clicking on the error line.
Take any event error I.D. number and search for it on these sites.
To check your RAM.
To check your hard drive.
Your drive manufacturer will have free diagnostic tools for checking your hard drive.
To check your drivers.
HOW TO: Verify Unsigned Device Drivers in Windows XP
To check conflicting software.
310353 - How to Perform a Clean Boot in Windows XP
316434 - HOW TO: Perform Advanced Clean-Boot Troubleshooting in Windows XP
To check your computer for spyware and adware.
Spybot
Ad-aware
Hijack This
To checkout services you are running.
XP temporary freeze after boot up
thread779-223070
314503 - Computer Stops Responding with a Black Screen When You Start Windows
Maybe you are just going to end up having to reformat and fresh install XP?