Diagnostic trouble codes, (DTC's) must be diagnosed and repaired starting with the first one that is retrieved. All DTC's must then be cleared and a drive cycle performed to confirm the repair. If the service engine soon, (SES) light comes on before, during or after the drive cycle, the process is then repeated until the SES light remains off. The first DTC that is retrieved can set other DTC's, that's why the first one needs to be repaired before continuing.
What DTC's did you retrieve and in what order?
The ignition switch is a very common problem on your 1997. When it goes haywire, it can cause all sorts of driveability issues and set false DTC's. Has it ever been replaced?
Have you checked the fuel filter for restriction?
Have you checked fuel pressure and leakdown? If so, what were the results?