I have a couple of the old E-Flite timers that I have been using but I'd like finer control over the flight time and I hate the way it slowly shuts down the motor.
...
Suggestions?
The eflite timer has no method of controlling RPM other than the initial 'throttle setting' that you program in. It sounds as if you are setting the run time too long for the batteries to maintain the power setting. (If you were to set a minimum run-time, would you get a cleaner cut-off?). At any rate, the simplest, cheapest replacement is the Hubin/Brodak FM-1a - which you program by setting pots with a screwdriver. If you don't change the pots, the flight will be the same every time. It does have four adjustments, rather than the 3 that the e-flite has - but the 4th is just an adjustment that adds some RPM at a few intervals to make up for battery voltage sag. If you just turn that pot all the way down, there will be no power addition. I would recommend that you just set it at half-way, and forget about it until you wish to play with it. It also has a motor sag warning that the end of the flight is about 5 seconds away.
The other 3 adjustments - Flight time, Power Level, and 'Delay' should mimic adjustments that are also needed on the e-flite timer.
This timer is available from Brodak or directly from Wil Hubin and costs about $17. It requires no programmer (other than a small screwdriver) and works with any ESC.
As for the RC system - yes you can do that, and you wouldn't even need a switch - you would just plug the ESC into the Receiver and when you go to low or zero throttle, the motor will stop. That will cost considerably more than the $20 or so that the Hubin timer costs.