Will a film of oil on water retard evaporation (of water) and prevent air and atmospheric impurities from diffusing into it? I vaguely recall hearing that a layer of oil on water will slow down the evaporation of water, as well as serving as a barrier that would prevent (or retard) the diffusion of air and atmospheric impurities into it. How accurate is this claim?

Some Background:

I want to make zinc/air batteries. $\ce{KOH}$ is commonly used in the electrolyte, but $\ce{CO2}$ in the air can react with the $\ce{KOH}$ and form carbonates which hinders the battery's performance. It seems like oil on top will shield the electrolyte from atmospheric $\ce{CO2}$. The $\ce{H2O}$ also must be kept from evaporating, which would otherwise result in changes to  concentration. $\ce{KOH}$ is also very hygroscopic and tends to attract water from air which would also cause variations in concentration.

When the batteries get discharged, $\ce{ZnO}$ is a final product. This should almost certainly precipitate and collect on the bottom of the tank since its considered insoluble in water.

Solar panels harness a vast amount of energy from the sun during the Summer. Storing surplus enrgy for use in Winter is a daunting task. A method that's been doing rounds these days: One could collect and reduce the $\ce{ZnO}$ back to $\ce{Zn}$, deposit it on plates/electrodes, and store these plates for Winter use. The plates could be put back in the batteries and the electrolyte (a fresh solution of $\ce{KOH}$) would have to be replenished.
I don't know about oil (fun fact, putting oil on water was a traditional approach to calming waves, thus the phrase "pour oil on troubled waters").  But cetyl alcohol has been used to decrease evaporation from reservoirs, which might be what you heard about.  For instance, here is a report on this, with lots of references.  They used a mix of steryl and cetyl alcohols (long-chain alcohols that will form a monolayer on the water).