Okay - just finished with a very helpful Level 2 support person (thanks, Nicky!).
It might be hardware, or it might be software. To narrow this down, Apple is recommending that I do a factory restore, but stop short of actually restoring any of my own files or data - unplug when I get the message "Set up as New or restore from Backup". This will give me a factory reset phone with no personalization in it.
With the iPhone 4S in that state, I can see if the problem occurs. If it does, they'll know it is hardware.
I pointed out, and she agreed, that if it is a memory problem and I don't exercise high memory, I might not encounter the problem. I also pointed out that I can't make this problem occur at will, so I won't know how long to wait before I can conclude that the problem isn't about to reoccur. She understood. I then pointed out that the phone isn't much use to me while it is empty so running for several days like this would be a hardship. She agreed, but pointed out this was the only way to definitively test the phone on my own.
I'll have to think about that. On one hand, the phone is already in a factory reset condition - since I took it out of the box like that. If one of the apps is causing this behavior, it is still an iOS problem not an app problem, because apps shouldn't freeze the iPhone. On the other hand, I can't be sure what is causing the problem with my phone in its current condition, since it is filled up with lots of software and music that the factory didn't put there (I did).
As a side note, since the iPhone isn't crashing, Apple isn't getting a report whenever this happens. And since the only way to get your iPhone back is to do a hard reset, we are erasing all information about what state the iPhone was in when it was locked up. There seems no resolution around this problem - there is no way to force a crash and thereby force a report to Apple.
I'm considering taking the phone into a store and seeing if I can do an exchange there - if they have a h/w diagnostic that can definitively check memory, I think I can trust that to show any defects.