Other than e-coating, there are no really permanent solutions. As noted, metal prep has a lot to do with it. The concern with foam is that it too shrinks as it ages and then may trap water. It seems important that you want to see rust as soon as possible, not hide it.
Also living in the Porsche 914 world, I think everyone should be using a glass mat or spiral cell battery these days. Sears sells a great, gigantic, one. What destroyed many of the 914s was water dripping on battery eventually corroding tray and suspension parts beneath. As an added bonus, glass mat batteries even work submerged!