Why don't you acquire a scan tool that will talk to your Jeep in "Chrysler" language, and actually diagnose the problem, by looking at whats going on? You can find used Snap-On MT2500's and OTC 4000E's on ebay for less than $200. Those are older scan tools but they support the chrysler specific J2610 protocol (with the right cartridge/key/cable) which is what the DRB2/3 uses. This way, you can see all the data that you would see with the chrysler tool, check sync. actuator tests, etc, etc. This is NOT generic OBD2 which is junk, especially on a 96.
A bad IAC won't cause a misfire, but it will cause stalling and low or high idle issues.
If the IAC is stuck almost shut, it might idle, but is likely to idle rich. If it idles rich long enough you can carbon foul the plugs, which will cause a miss at idle.
Pull a plug and have a look.
Or do a moderate to higher RPM run up the interstate, which will usually clean the plugs up some (temporarily).
Weak spark can cause almost the same thing to happen, the plugs can carbon foul. Weak spark and the ignition usually craps out and starts to break up before red line, often around 3000-3500 RPM or so. Weak spark can have multiple causes. So swapping parts may or may not solve this issue.
An easy test is to put it in 1-2 and drive it at a constant speed at higher RPM's and see what happens.
I'm trying to think of things that might not cause the CEL to light up, but will still cause issues.
Another quick test is to disconnect the battery and reset the computer. If it runs better on defaults, before it relearns and the problems start to reappear, it is likely to be a sensor (or connector or wire) issue. If there is no difference, it is likely to be a component problem, coil, high voltage cable, injector etc.
Swapping out sensors without cleaning the connectors and at least visually inspecting the wiring can be a waste of time and money.
The last bend of the injector harness where it exits the cable channel is a known trouble spot. You can have maybe three strands of copper left connected under the insulation, the broken strands may or may not be making contact.. It not only takes volts to fire an injector, it takes a certain number of amps also.