We had something like this intermittently just after we went live. It affected individual users, some with default avatars, some which had uploaded their own. It was only a few users, and it seemed to stay that way for those who were affected. Their profile preferences showed the right avatar, but the avatars were blank on the topic and thread views.
At that time we were also getting timeout issues, probably because of system load. We added the “Discourse Whos Online” plugin and updated discourse and the problem went away.
I’m not sure if it was the plugin, or the update which fixed it, but the problem went away without any additional steps.