I tried Fluid Film but found it stays sticky and accumulates/attracts dirt, particularly road dust, and it ends up being a mess.
Powder coating is not a panacea as it costs the part in plastic and I found the plastic may crack and then rust creeps under the plastic. It is also hard to touch up, whereas good paint just brushes on.
Two part epoxy has always been very good but it must be mixed so it catalyses and hardens, a very good result however.
There is now another option:
You can now buy a rattle can of paint but on the inside is an internal "bladder" of catalyst, which when pierced, will mix with the paint, which causes the paint to harden, even if it is inside the can, so it MUST be used within a certain amount of time. Identified by K2 being the first part of the name, see Amazon. The result is very tough paint.
There is a shop in Exton that put my vehicles on a lift, power washed the underside and then brushed on POR-15. POR stands for "Paint Over Rust". In the motorcycle world guys use it to successfully paint the inside of old gas tanks. I use it as a paint, brushing it over any part on a vehicle that has started to rust. It is so easy. Not a museum result, but presentable.
This shop gets Jeeps in with rust, and some of the frames are NLA, so they suggest to Jeepers to paint the outside, then clean the inside of the frame, let it dry, and push a rotating sprayer inside the frame and pull it through, coating the inside of the frame as well, just like Ziebart used to do.
Bull Dog Rod & Custom, talk with Jim, 610/431-1970. They will also do ANY work your truck may need, body work, install radios, full frame up restorations, resto rod, you name it. Say Hi! to Jim for me if you call. Very accommodating shop.