It's a good question, and as per your update, qa_get_users_html(...) in qa-external-users.php is the right place to insert the Gravatar (or any other avatar).
As for the size, my recommendation would be to start with a fixed size for the avatar in your HTML, based on what you want to appear in question lists. So the HTML code might include something like: WIDTH="20" HEIGHT="20"
Then, use an advanced theme, and override the post_meta_who($post, $class) function. In your function, check if ($this->template=='question') and if so, check $post['raw']['basetype'] - based on the value of that ('Q' or 'A' or 'C'), you can do a str_replace on the HTML in $post['who']['data'], to replace WIDTH="20" HEIGHT="20" with WIDTH="40" HEIGHT="40" or whatever you want.
Once your own function is done modifying $post, call the default function via qa_html_theme_base::post_meta_who($post, $class);
Sorry there isn't currently an easier way!