What is funny is that I ruled everything you did out when you first started talking becuase none of those would cause the issue only to happen at particular speeds or gears. The computer or another component controls the timing of the firing when the engine is running. Because the problem is misfiring and is being caused by the plugs not activating at the correct time and the fact that it only occurs sometimes instantly says that it is a computer problem. Replace, flash or upgrade your computer and it should be fine. (I am assuming you do not have a turbo). If it was a mechanical problem then it would occur at all speeds and all gears or would be completely random as the part effected was required for the operation. The only other possibility would be the head but that is unlikely as you do not have vtech and therefore mechanically your head functions the same at all speeds. The timing of your piston firing can be reprogrammed in the computer somehow it is not working correctly or got corrupted. It will not show an error b/c OBDII only looks for censor errors and does a bad job at actually reporting real problems. The fact that it does not show any errors also suggests it is a computer problem.

Also he already has worked his way up as b/c the places he went to had no idea where to start they just started from the bottom and went to the top. Most car repair places simply go from least expensive to most as their solution to any problem the computer can not tell them the answer to. However if you apply logic and understanding you can avoid replacing parts that should have nothing to do with your problem given all data available. Based off the data available and not even counting what he has already tired my first thought is the computer.