I can not say for sure but I do know I seem to get gmail
failures every two or three days from my 24/7 hourly fetchmail cron
jobs. All of them are log in failures. I noticed fetchmail goes
into a tight loop upon login failure. Had to add a spawn kill fetchmail
if still running after a minute.
My guess was that gmail suspends your login if too many attempts
from your ip. I have seven separate accounts running fetchmail on
the hour and assumed I cross a threshold every once in awhile.