Yes, it sounds like a very good idea to get rid of a deliberate sleep in peek(). But it must have been put there for a reason - some digging(*) reveals that it was introduced long ago:
revision 1.109 date: 1998/07/10 18:58:55; author: grubba; state: Exp; lines: +5 -5 Made file_peek() somewhat more paranoid.
Not the most illuminating message. Maybe Grubba can recall something more about this? Otherwise I suggest we remove the timeout in the next dev branch to let it brew there for a while. It was probably a kludge to work around a bug in some old poll implementation on a strange OS that's no longer used anyway.
*) Tried out git for this. git diff and blame are fast and works nicely, but is there some gui tool to do this kind of thing even more conveniently? I tried to use "git-gui blame" but couldn't make it go past the latest change.