There is a product which is much thought of in the auto restoration world called Por-15. See their website at http://www.por15.com/
It seems to take comparatively little to cover a large area, so even though the cost per quart is high, a quart will do a lot. Note that it does not hold up to UV rays, so if it the finished product will be in direct sunlight you must use a regular metal paint over the Por-15. Battery trays, being under cover, would not need this extra step.
Obviously, this is not going to help if the metal is structurally compromised.