By the sound of things you must be using the older ballasts with a starter plug. These ballasts cause flickering of the bulb and this constant flickering causes damage to the ballast itself.
The ballast has to generate a very high voltage to "spark" the tube. Once the tube is glowing the ballast can relax and give a constant power output. The state between changing from high output to regulated is very stressful for the components and the starter plug is also responsible for handling this change.
Tubes need to be replaced every 12-24 months because the gas inside the tube loses it health properties even though it still emits light. So technically it becomes bad for your eyes because it starts to produce unwanted UV light.
I would suggest removing the old light fitting and buying a new one and INSIST on an electronic ballast. The electronic ballast does not need any starter plugs and handles the initial output voltage much better. It does not cause flickering (but if there is a problem it just does not turn on). These ballasts MUST match the wattage of the tubes. Higher or lower wattage will result in shortened life of the tube or not turn on at all.
The electronic ballast will not be influenced by humidity or temperature that much. It just runs.