I suggest 2 ways to avoid the situation when player wins but his/her rating goes down.
First, treat such games as unrated (the same as losing against 2500 rating).
Second, to show warning at the beginning of such game suggesting to cancel it.
Of course, in the beginning as a provisional player I believed that raitings are calculated fairely and prefered to play chess instead of learning about rating calculation. So I have learned too late that system of provisional ratings is far from perfect and was quite dissapointed about that.