Lower unit shift linkage is out of adjustment OR drive dogs on the dog clutch and gears are worn. What happens is it slips out of gear unitil the next dog engages then BANG! It slams onto the transom. Fix it now because the dogs will wear, it will get worse with continued use and eventually the drive dogs will not stay engaged no matter what power level the engine is at.
To check adjustment, put the engine in forward, reverse, and neutral. Mark the lower shift rod in each position. The lower shift rod comes out of the midleg below the transom clamps and lower motor mount. The shift rod travel should be equal in both directions. If not, you need to check the control box, cables and linkage for correct adjustment.
Now, put the control handle in neutral and spin the prop. If the dogs rattle, then it is out of adjustment. You can remove the pin and cotter from the coupler and unscrew the lower shift rod a turn at a time until there is no noise and the lower unit locks positively in both gears. HOWEVER: A better method is the adjust the upper shift rod under the lower carb. It is more difficult but better. DOWN biases the shift linkage toward forward. CAREFUL: A little goes a long way. If you can hear or feel the drive dog dragging on the forward gear, you have gone too far.
If adjustment does not help the problem, the lower unit must be disassembled and the drive dogs dressed to square again. A long job, but way better than buying a new lower unit.
SOMETIMES: Because the reverse gear gets much less use and damage, the dog clutch can be slipped off the prop shaft and reversed--if the drive dogs on the forward gear are not damaged too badly.
AND FIND A BETTER MECHANIC