In the more recent versions of spirit of half-life, there is a different rain entity, rain_settings and rain_modify. These are much less buggy and you can specify wind and such to make the effect look more realistic.
But I don't see a problem with using the env_rain entity, there is no other way of doing it, spamming your map with func_conveyors can cause the too many entities in visible packet list error.