why does a cricket player moves his hands backwards on catching a fast cricket ball
Because in this way he increases the time of catch to reduce the momentum of the ball to zero.
As, force = change in momentum/time
Therefore player has to apply a smaller force against the ball to stop it. The ball in turn exert a smaller force on his hand and thus the hands are not injured.