555 monostable circuit - triggering relay
This is a simple task for a small microcontroller.  Even the tiny PIC 10F200 can do this easily.

The switch pulls a input line to ground.  When the micro sees this, it energizes the relay for 100 ms or whatever you decide is the right time.  It then goes into a loop waiting for the input line to be high continuously for 100 ms (to debounce the switch and ignore short glitches and prevent rapid back to back firing of the relay), then looks for a new high to low transition of the input line again.