You've done enough major things that I'm guessing you also did a lot of the simpler stuff too. But anyway, here are some of the simple and easy things that come to mind to try, if you haven't already done so.
Swap relays, and check the fuse box for corrosion.
Carefully check the battery wires for deterioration (under the insulation), and also the connectors.
Pull all coil wires and check for problems and corrosion.
Have someone else crank, at night with no lights, while you look under the hood for arching.
Pull the spark plugs after cranking one time for a few seconds to see if they're wet or dry, and then check to see what the spark looks like from each of them.
Best to do only one thing at a time, and then retry after each one.