All other approaches mentioned do not add informational value; they simply add crafted delays or produce other overhead to the system to make life simpler (but, in reality, they don't).
Refreshes at one minute are fine. Possibly provide a proc to trigger manual updates for a nick, and catch the results in a bind, resulting in async operation. I do not think that this is necessary, however.
The IRC protocol does not provide proper state in this matter, and as such, neither should eggdrop. Covering it up with fake marble will not improve matters.

First off, i cannot help you with those bind problems, since i have never ever tried Tk, funnily enough.
However, i have got an idea concerning the keypress.

Your "timed" bind: bind for mouse movement and record the first coordinates - then discard all further bind events until a reasonable amount of time (200ms?) has passed. Do that either by unbinding and rebinding with "after" (again, never worked with Tk, so i do not know if that is possible) or an if-block that returns (whatever works best, performance-wise.
Then check again - if the coords have not changed and the cursor happens to be under some word with definition, show hint/popup.

Thats of course just a somewhat crude hack, but it is all i got to offer. I think it is more comfortable than pressing a key.

a clear outline on what has to be done, in the case of a script request

expected/targeted payment or if you want it done for free

preferably Jobs that would warrant a business contract

possibly a timeframe

This does NOT exclude changes/revisions to existing scripts; the difference being to posts in the IPS forum is simple, Ask yourself "Would my client mind paying for that if it were a regular task in my daytime job?" and if you can answer that with yes, this here is for you.

Do not post here if your request or offer does not meet the above criteria - go to the "immediate problem solving" forum instead, please.

The staff retains the right to rename and/or move topics at their discretion.

You *could* source the file into a seperate, safe interpreter and execute info procs * over there - but that bears lots of potential problems, since the script might not like it.
The only viable way I can think of is grepping the file for proc header definitions, eg /proc\s+(\S+)\s+\{\s*((?:\S+)(?:\s*))*\s*}\s+\{/ or sth like that