For a custom bounce like that you'll need a timer. The timer behavior added to the sprite should work. It works like a function, you just add an action to call the function.
I'd set angle of motion to Sprite[8Direction].MovAngle-180, instead of bounce... same thing, you just get more control over the angle with set angle of motion. Then add actions to disable user input, and set speed.
And then add an action to call the object timer.
For the timer call just re-enable user input, and reset speed.