Modify circuit to turn motor on/off multiple times per switch press
This is very easy to do with a microcontroller.  The tiny and cheap PIC 10F200 can do this easily.

The button is wired between ground and a processor pin that has a internal pullup.  The button is then only a input to the processor.  The processor does the timing and whatever other logic you want, then turns the motor on/off via another output.

There is no need for a darlington if the transistor will be driven from a processor pin.  I expect the motor takes relatively little current, so something like the cheap and readily available 2N4401 can do this.  Give the base about 1/50 of the worst case motor current, and the transistor will stay saturated when on.  I'd add a reverse Schottky diode accross the motor to prevent turn-off spikes from damaging the transistor.