Firstly, it's more like doing the backup every 100 actions
No matter whether you receive funds, send funds, or generate new receiving addresses, each of those actions uses(1)
one of the pre-generated keys.
Secondly, you can run bitcoin-qt with the parameter -keypool=<n> to tweak the pool of pre-generated keys. Sane values are <1000.
c:\Program Files (x86)\Bitcoin\bitcoin-qt.exe -keypool=256
(1) Actually, receiving funds only uses a key from the key-pool if the funds are sent to the address currently listed as "my address". Receiving bitcoins with any other previously-generated address does not influence the key-pool. Therefore, you will generally be safer than you think you are as far as using very old wallet backups is concerned.