I'd test the coils, it's easy, but be careful. I did in the following way.
1. with engine off, loosen the plug wires at the coils so they are just laying over each protrusion.
2. get a pair of insulated pliers, because with the engine running you can lift one at a time. If you use your fingers and touch any part of the vehicle you'll get a jolt that will not hurt you but when you jump THATS when you get hurt.
3. start the truck
4. Using the insulated pliers, Lift the plug wire (for the number 1 cylinder) slightly and look to see if you see a spark between the wire and the coil. (you only want to lift it enough so you can see the spark. The spark will typically "jump" 1/2" also you will hear the clicking noise as the spark jumps. If the truck is still running smoothly, let this plug wire back to it's original spot and lift the #1 wire from the other coil and again look for the spark and lister for the click. If the truck is still running smoothly list both wires so they're not making contact with the coil. Now the engine should run rough because you're only running on 3 cylinders.
5. lay the wires back and the truck should be running smooth again.
6. So in the above, if you started the truck the first time and it was running smooth, and you lifted the coil from the front coil and it started running rough and then pulled the same wire from the back coil and no change (still rough) then the back coil has a problem.
7. You want to repeat this for all 4 cylinders.
Like I mentioned prior to this, on my truck, when the back coil failed the Check engine light stayed on all the time about 5-10 seconds after starting the engine.
If you do this to all 4 cylinders and don't find a problem with any of the coils, I'd look to fuel related (filter?) But it just dawned on me, did you look at any spark plugs? If the wires were bad, (which they were) the plugs could be fouled and dirty.
I know I'm long winded just trying to be thorough.
Good luck, I'll be back tomorrow.