All the other comments are accurate, though it does seem like
something the database ought to be able to handle.
The other thing which hasn't been mentioned is that you have a lot of
indexes. Updates require maintaining all those indexes. Are all of
these indexes really necessary? Do you have routine queries which look
up users based on their flags? Or all all your oltp transactions for
specific userids in which case you probably just need the index on
userid.
You'll probably find 8.3 helps this workload more than any tuning you
can do in the database though. Especially if you can reduce the number
of indexes and avoid an index on any flags that are being updated.