Ha - I hate being that predictable

. But if you have an aversion to globals, it's likely that the plugin code and the eval of the template happen in the same php file so it could be local to that file. Making it global I guess just avoids having to worry about cases where something might be happening in a function call.
The cron idea sounds good to me, to be honest I don't know anything about updating the phrase in the database.