Thanks to a dialog I opened with the folks at Gravatar, I may have found a solution to this.
XenForo sends Gravatar image URLs with a .jpg extension; however, that is not required by the API. Instead, send the URL without the .jpg extension, and I am finding that the Gravatar feature works more reliably.
I have two XenForo installations, so I am able to edit files in one instance and not the other. On the unedited instance, I am still loading a stale Gravatar that has been changed four times since. On the edited instance, while the change does not take place right away in all avatar sizes, it does kick in on all of them usually well within the hour. I've tried it on a few separate days, and so far it is working far better.
For their part, a "Happiness Manager" has also sent my request along to investigate why Gravatars load stale with a JPG extension, and occasionally are not as fast without the extension. But there is no requirement to use the extension, and as I am finding, Gravatars are more reliable now and I have no qualms about enabling the feature once I've modified the two files needed to change the URL that XenForo generates.
If you decide to perform the edits, you do so at your own risk; always make a backup of your original files! In both cases, you are looking at the "{$md5}" in the code to delete the ".jpg" immediately after.
...../library/XenForo/Template/Helper/Core.php
Around line 1753, find this:
PHP:
return (XenForo_Application::$secure ? 'https://secure' : 'http://www')
. ".gravatar.com/avatar/{$md5}.jpg?s={$size}{$default}";
Replace with:
PHP:
return (XenForo_Application::$secure ? 'https://secure' : 'http://www')
. ".gravatar.com/avatar/{$md5}?s={$size}{$default}";
...../library/XenForo/Model/Avatar.php
Around line 496, find this:
PHP:
return (XenForo_Application::$secure ? 'https://secure' : 'http://www')
. ".gravatar.com/avatar/{$md5}.jpg?s={$size}{$default}";
replace with:
PHP:
return (XenForo_Application::$secure ? 'https://secure' : 'http://www')
. ".gravatar.com/avatar/{$md5}?s={$size}{$default}";
Quite simple. I'm still monitoring results and trying to change my Gravatar daily (with both existing and new Gravatars), but I am finding Gravatar works better.