I would call Sprint and tell them that your phone is rebooting and it's been happening for awhile now. Tell them you have factory reset the phone and it's still occurring. Ask them to do an Advanced Exchange. They will ship you a refurb phone to your house and you can just ship your bad one back.
My wife's EVO had the same problem. It would reboot at random times of the day. At first it was only happening every now and then. The problem finally progressed to the point where the reboots were happening every day. Once the phone rebooted, it would get stuck in an endless reboot loop. My wife would have to pull the battery and let it sit without the battery in for at least an hour before it would boot back up again and be stable.
I did some research on the reboot loop issue online and most people who have had the problem had to get a new phone in order to resolve the issue. Hope this helps you and good luck! Her new phone has been rock solid, so it was definitely a hardware issue.