Well if you are getting spark and have a new ECM, maybe the cam sensor is causing the misfiring. Sounds like a cam sensor but I am not positive.
Have you priced a new cam sensor - if it is cheap enough, it may be shotgunning the part, but if it is under $50 and you can do it yourself, it may be an alternative.
Or get someone to scan the computer...