Another thought, what about scheduling a daily cron job to run:
Is used to download and make usable all the metadata for the
currently enabled yum repos.
Then set metadata_expire=never in /etc/yum.conf. (In RHEL6 mine is set to 90m as the default.)
Then it should be updated in the background daily without causing any delay for you. Best of both worlds as your cache remains current without delays to you.