I think that the problem is in getimagesize function:
$pic_size = @getimagesize($avatar_url);
Probably that function try to connect to all avatars websites and if there is at least one website slow the page is very very slow...
I think also that resize_avatar() function is not needed because when you set an avatar in your profile there is already a dimension control...
(sorry for my bad english)
OT: Users are disappointed by website response but I think is a server performance problem. Before I use PHP-Nuke (2004 version) modded by me and we have the same problem. We reach a 350 mb database... I choose your project because is wonderful! Do you suggest me a quick and good price hosting? thanks and congratulations