A code P0201 indicates that there is a misfire condition present in #2 cylinder. A code P0301 indicates a misfire present in #3 cylinder. The problem can be intermittent and still cause these codes to store.
Anything that causes the engine to miss intermittently will set misfire codes; this includes an ignition, fuel, or mechanical problem that is specific to the cylinders involved.
To determine what the cause of ogthe problem is will require some diagnostic testing to be perfromed, possibly while the problem is occurring, to be able to eliminate the various possible causes and hopefully narrow it doewn to one component. I can tell you from experience that injector control circuit faults on these engines are not very common... the few times I have ever seen an injector circuit electrical fault on Jeep engines it was usually a poor connection at the injector electrical plug. If you wiggle the plug at the injector and it does not affect engine operation, it is more likely that the problem is being caused by something else.
I am assuming you do not have much in the way of test equipment there to work with; diagnosis of misfire problems is usually pretty quick and easy with the correct est equipment (compression gauge, ignition scope, scan tool with live engine data display capability). Without having the required equipment to perfrom the necessary test procedures to systematicallyand logically narrow down the fault to the component level, you may need to resort to trying a few likely replacement parts although that may not resolve the problem if it is being caused by an inernal mechanical problem or an electrical connection, for example.
You ahve replaced the spark plugs; that's a good start; you may possibly have a faulty ignition coil assembly as that would cause similiar symptoms by not supplying voltage to fire one or more spark plugs. It is difficult to test the coil assembly under actual oeprating conditions, but you can try a quick test by removing teh col assembly, leaving the electrical conenctor attached. Then, remove the spark plugs, connct them to the coils, and lay the plugs on a metal engine surface. Have someone crank the engine while you watch to verify all plugs have a spark jumping the plug gap. If not, then the coil assembly is possibly the cause of the problem.
These engines are also known for developing sticking exhaust valves that careate intermittent misfire conditions that are specific to one or more cylinders, much like you
are describing. There is a test procedure for this condition, but it requires use of the factory DRB-iii scan tool . If this is found to be the cause of the problem, there is a specific procedure for rotating the valves in their seats and decarboning the engine that can be done without removing the cylinder head.
Any technician at a Jeep dealership has likely seen the valve problem more than once and is intimately familiar with the diagnostic and repair procedure as it is a very common complaint on the straight 6 cyl engines. Techs at independent shops may not ahve the DRB-III scan equipment needed for diagnosing the problem, and may have never seen the valve issue symptoms.
For that reason, you may want to consider taking it in to the Jeep dealer to be diagnosed before attempting any further repairs; if it is the common valve problem that these engines develop, then you can bolt many hundreds of dollars of new parts on it, and spend many hours beating your head on it, and make no progress...