Scream,
What I've always thought about this is that you shouldn't do this calculation in postlist, but rather only when the user clicks on something like a new link next to each thread head message. At that point, you would call showflat.pl or showthreaded.pl with a parameter of page=new or similar.
At the head of showflat.pl or showthreaded.pl you would look up all the messages posted since the user's last visit and could calculate which page to jump to at that point. This wouldn't be too much overhead since once you get into showflat.pl or showthreaded.pl you have already committed to pulling most if not all of the messages in that thread out of the database.
Is that a sensible idea?