For the kernel issue, yes, that is possible. The thread I gave you have a really good discussion about kernels and how they operate and differer in performance on different phones. Unfortunately, there is not a one-size-fits-all answer for what kernel is going to work, mainly due to different kernel voltages and tolerances and variations in CPU manufacturing.
I can tell you that I am currently running a Chevy ULV 1GHz kernel and have been having good luck, but sounds like that might be something your phone doesn't like.
The P3 kernels are also highly regarded and stable:
http://www.droidforums.net/forum/android-roms/50449-2-1-2-2-p3-kernels.html
Just make sure you get one of the Froyo kernels.
Might be worth a try as an alternative to see if that makes you phone happier. Also, set you max lower and let that run for a while. If it's stable, bump it up. Lather, rinse and repeat until you figure out what the upper threshold of what your phone likes is.
Actually before I tried Chevy kernels I had tried the p3 kernels and I couldn't keep the phone up more than 1 sec at 800. None of the work. But I'll try again.
Now when you say to change min/max and let it run? how exactly do I let it run? Anything other than idle I assume?
Also, can you run a stress test and not have your phone hang?
thanks
Before you go too much further, I would really recommend reading at least the main posts in the Overclocking thread. That is going to give you a much better background as to just what the SetCPU settings actually do as well as some suggestions for how to test out your phone. I know it's a lot to take in, but it is really worth it.
Now to the testing, first I would deactivate any profiles you have running. Until you get a baseline for your phone, they are only going to get in the way.
Next, set the max to 800 MHz, and look through the Overclocking thread for some basic, default values. As you test, you will probably wind up changing them, but at least it's a starting point.
With those settings, just use your phone as you normally would-use the web, make calls, run apps, etc. See how it behaves. Once you get some stability, then bump up the CPU max and see how it behaves that way. Basically, just keep repeating that process until you start to get instability (FCs, reboots) and that will tell you where you phone's max really is.
In regard to your question about the stress test, when I run this, the phone looks like it hangs, but I press the back button and it quits the test and comes up with a result-in my case, no errors.