Just a wild guess here – is your water heater on the outside of your house exposed to the weather or is it a flued heater fitted inside?
If it is an inside heater then I would suspect that the flue terminal is allowing water to run down into the heat exchanger and extinguishing the pilot light – in which case a new flue terminal correctly fitted should overcome your problem.
If it is an exterior mounted heater then I suspect the problem is similiar in that the rain is being driven down the flue outlet and dripping onto the pilot flame. If this is the case then a protective sheild could be fitted over the pilot to protect it from the dripping water.
Selgas Services Ltd
Craftsman Gasfitters, Plumbers, Electrical Service Technicians