My first idea would be to find a reputable and competent shop (which the one you went to doesn't qualify by definition of telling you "no codes" for your ABS). Have said competent shop scan and review codes with you so you can make wise decisions and not just toss parts at it.
As I said above, my first guess would be wheel sensors and my second guess would be the ton rings inside your rear e-brake area. At this point, I'd be pulling the rear discs to visually verify the situation back there (it's easy and requires only hand tools). Out of curiosity, does your e-brake work?
If it's neither of the things I listed, it gets significantly more complicated. But again, you have codes in the system which need to be read to properly diagnose what your truck has been trying to tell you for years.
And while owning your own code reader is good, one that reads ABS and Air Bag codes will cost as much or more than a scan by a competent shop. It seems a competent shop might be a good help in this.