Alright, The next step is to get a fuel pressure gauge hooked to the fuel rail schrader valve at the engine. Could be the fuel pump relay perhaps. Or the injector pulse. I believe it has spark, as that usually won't come and go. If you don't have a fuel pressure gauge, a good test is to spray some carb cleaner or gas directly into the throttle body, and see if it will run for a couple of seconds then, that shows spark but no fuel getting through the injectors.
If you can verify 35-40 psi at the fuel rail when it won't crank, then I would check injector pulse next. If you have spark, and no injector pulse, Then most likely your PCM is faulty. as the PCM grounds the fuel injectors
You will need a noid light to check injector pulse. Pull off a fuel injector connector, plug the light in and look for the light to blink while cranking. If the light doesn't blink, Then check for constant 12 volts on the injector RED wire. Should have constant 12 volts. If it does, and the noid light doesn't blink when cranking. I would suspect the PCM.
(I'm assuming the compression is good, and the timing chain hasn't slipped) But you may want to check compression just to be sure the cylinders have 120 psi or more.)