Hi,
I fixed this problem on my installation using a somewhat crude but reliable approach. I created a new user. I then deleted the user who’s posts were not showing up properly (when deleting a user wordpress asks you who to re-assign the posts to – I indicated I wanted to re-assign the posts to the new user).
The author links now work properly!
Before using this approach I took at look at some of the wordpress code but my time was limited and my php is a little rusty. I suspect some query somewhere is using the user’s display name (maybe called user nice name internally) rather than their unique id in some query. In situations where someone has maybe set the admin user and a normal user to have the same display name something is getting broken — this is only a guess though so corrections welcome.