Next time it acts up try going to the BJB under hood and pull the starter relay. With a voltmeter or test light, back probe terminal 85 at socket (Tan with Red stripe wire). With key in crank position you should see power. If no power was observed and you have a manual transmission check the clutch pedal switch. If its an automatic, check at DTR sensor on side of transmission and clutch switch jumper (if used).
Check terminal 30 at socket, it should be hot at all times.
Next using a voltmeter set to read continuity/ohms, check terminal 86 at socket with key in crank position (should read less than <1 ohms). If not, check wiring back to PCM.
To verify the starter will turn over, you can momentarily jumper 12v to terminal 87 at socket (starter should crank). If not, check starter.
If you don't know which relay is the starters, click this link and go to page 205 look for relay 56 Click Link