Sounds like a good ol' case of bad ignition timing. Have you checked that while cranking? I just overhauled a 91 Silverado engine and ignition timing kicked my A** for three days. Cut your fuel pump relay and roll the engine over. Put you a timing light on the 1L cylinder spark plug wire and watch the harmonic balancer. The balancer has a mark on it for TDC (top dead center) and on the timing cover (front cover behind the crank pulley) there is a tab that comes off. the wide V in the tab indicates 0 degrees. There are lots of other things that can effect this mark but we're just assuming you got a factory engine. While rolling the engine over you want to have the timing light flash within these marks. this should get you running. Shut back down and disconnect the ignition module BYPASS connector. Usually located by the ECM strip on the firewall next to the fuel pump relay. (one prong connector). start the engine and check timing. Get it in the mark with the balancer. Once done, shut down, plug in the connector, disconnect the battery for 30 secs. reconnect and start up. Should be good from there.