But it started happening again recently, and I couldn't understand it because I had ~80MB free. I eventually discovered that for some reason all my widgets (including the default ones put there by HTC) had been duplicated! So I had two clocks, one on top of the other; two calendar widgets, one on top of the other; and so on. (You're not supposed to be able to have overlapping widgets.) I didn't spot it because there were no visual clues: it looked exactly the same as before.
I didn't discover it until, in desperation, I started deleting widgets to see if one of them was causing the problem, and noticed that when I removed the calendar widget, it was still there. Removing the second one did make it disappear properly.
This must have arisen from some screwed up backup/restore procedure, but I don't know what.
In any case, if your home screen keeps restarting, you might check whether this has happened to you too. The easiest way to tell, without having to recreate all your widgets, is to hold down on the clock and drag it towards the bin as if you were going to remove it, but don't let go. If all is as it should be, the clock will shift, and there'll be a gap left where it used to be. If so, put it back where it was. But if it moves around and you can see that there's another clock still there, then delete the one you're dragging, and then try the same thing with your other widgets. Remember to do this on all your home screens, not just the default one.
If you discover this has happened, please do reply to this and let me know. I'd be interested to know if it's just me, or if it's a common problem. And if it's a common problem, maybe we can work out what causes it.