Alright, so the entity local timer works like a normal timer (timergreater=X:somecommand), but is attached to only that one entity. So you could have a normal timer, and it would affect everything, but a local timer only affects the entity of origin.
I'm not quite sure what the weather system is, but if it's an entity, you can make a local timer script and set it to how long you actually want the rain to appear, then you can add that as the main for the weather effects. If it's a zone with "plrwithinzone=X," then add the local timer in the first and last line. The first one being the command to start the local timer, and the second being the one for "localtimegreater=X, destroy."
Hope this helps, if you could give me details and screenshots in the editor of the weather system, I may be able to help more if this doesn't work.
Putting the fear back into sliced bread since 4th May 2010