Will assigning a name string to user #0 do any harm?
For the record: I've done it.  One issue immediately popped up during testing: If a user named "Anonymous" already existed, creation would fail (obviously).  After modifying the routine to check for existing users before updating, it worked.

Been running on several production sites for a week, and no problems so far. I'll report here if any problems occur.