You mentioned you tried an ECM from another truck- I'd take readings from the sensors on the truck that was operating ok & compare them to readings on this truck. I would think that there would be a code stored if there was a sensor issue.
Running rough could be a timing or a EGR issue. They would be my next targets
This is ONLY to be used to report flooding, spam, advertising and problematic (harassing, abusive or crude) posts.