I'm not exactly sure which ROM I'm running but I'm pretty sure it's FRF57 (it came from this site -
Download: Newer Motorola Droid Froyo Leak FRF57 - Droid Life: A Droid Community Blog). My phone's build number says: voles-userdebug 2.2 FRFxx 33333 test-keys.
I'm currently running SetCPU 2.0b (I guess I was running 1.6.0 before, but I'm not sure since I never looked at the build number).
I was thinking that overheating might be the issue too, but while the freezing is happening, the temp being reported by SetCPU (battery temp I believe) is only around 100F. Also, I've gone through the restarting process described above at least 10 times and the issue is consistent. I can run the phone at 900mhz all day long with no issues and I feel that there wouldn't be an overheating issue from me running at 1 or 1.1 ghz when 900mhz works fine. Could be though, I guess.
First off, thanks for letting me know SetCPU is up to 2.0b. I was still running 1.6.0. I get mine free (and legally) but I have to do manual updates as a result and I hadn't checked in a few days.
Okay, have you read
Overclocking 101 by Skull One? If not, take a look, it tells you a lot.
Secondly, you're running the vanilla FRF57 FroYo RC? I thought I was the only one left (though I did Black Glass theme it)!
Without a CPU temperature monitor we really don't know what's going on inside our phones. Battery temperatures tend to be more stable (on both ends) than the CPU temperature, so you could be spiking insanely high really quickly and you wouldn't know till it hits your battery, though the issues you're having sound very much like an overheating CPU.
Since you can only push the phone to 1Ghz right now, I'd suggest you try a higher-clocked kernel, push it to 900 or 1000 mhz for now, let the phone charge overnight (so it can cool off) and try pushing it higher and see if you have the same issue and if it's an instant thing or not. If it still happens instantly there's an issue with your hardware not handling the increased speeds under 2.2 (I think it might be a JIT issue), if it takes a moment it's heat. If it doesn't happen at all, it's heat.
If you don't want to put up with the crap, just run it at 900 and be grateful you're not stuck with one of the ones that can only run 600, 700, or 800mhz kernels!
Of course, someone else might know more than I do and have other suggestions, but that's my opinion.
Oh, and ChevyNo1's ULV kernel, if it works for you, will generate the least amount of heat and use the least amount of juice, so if you're stuck at 1Ghz, you might as well run 1Ghz as long as possible, right?