Mil-p-8802 is a standard which applies to polysulfide based adhesives, which are particularly desirable for chemical and extreme moisture (i.e., submersion) resistance - not properties which are particularly important in this application, unless you regularly do water crossings up to the roof...
Pretty much any epoxy will bond extremely well to metals, the key is always surface preparation. Make sure that both surfaces are clean - typically denatured alcohol or acetone work well. You can bond to the painted surface without having to sand it down to the metal (after all, the paint and the epoxy are both just polymers with good adhesion qualities) but it is probably a good idea to scuff the paint with sandpaper to roughen it up, as that will give the epoxy a better surface to stick to. (The exact same idea as scuffing your paint before applying bedliner.) If you really want to get crazy, you could get some chromic acid and etch the metal surface, but the hazardous waste is probably not worth it...
I'm sure I'll take some heat for this, but I am something of a fan of JB Weld. I've messed with a ton of epoxies (I work in a composites lab) and JB actually has a pretty impressive combination of adhesion, strength and flexibility. If you don't like JB, your local hardware store will have epoxies in a variety of viscosities and cure times. Make sure you get something with a long enough working time to get the job done, and thick enough viscosity to not run all over, or let your patch slip out of place before it starts to set up.
If you decide to try a fiberglass patch, talk to a local who does boat repair and ask what epoxy/polyester resins they have had good luck with. Also, get some black dye to add to the resin, as that will significantly improve it's UV degradation.
Good luck.