There are a few valid approaches.
You could:

just recreate the model and optimizer
call reset_parameters() on each layer of your model
or store the initial state_dict of the randomly initialized model and load it for each reset.

Let me know, if one of these approaches would work for you.