Doug,
If your application cannot tolerate the +/- delay of the ladder logic scans, you should rethink your use of a PLC for this critical bit of timing.
The only way you can reduce the variability is to do everything relaated to handing the external event and your time delay need in the interurpt handling function. Start the timer, force the output, poll for timer to compled clear the output and then exit the custom funciton. This has the negative side effect of shutting dow the PLC for the duration of your delay. The ladder logic scan mechanism will be suspended and the system will be unresponsive to changes on inputs.
You may want to figure out how to do the precise time delays using circuity external to the PLC. I'd investigate the use of cheap microcontrollers such as Basic Stamp, Rabbit or PIC. The PLC can handle the user interface and "talk" to the external microcontroller via the RS-485 serial port. The microcontroller could act as a precision, programable time delay relay.
Gary D