How did you check these sensors to determine they're good? Please give more info. The smog guy telling you a vague "they seem to be working" ain't good enough.
Beyond the codes and onto the rich mixture, although I'd rather see the codes addressed first:
If you have or can borrow an infrared temp gun, I'd check the temperature right at the thermostat housing with the truck fully warmed up and see if you're getting 195F~200F or so. That new thermostat doesn't necessarily mean it's a good one, or the right one. It's one of those parts that is quickly becoming "often junk right out of the box" anymore, much like master cylinders and rebuilt A/C compressors. If you can find them near you I suggest using a Stant Superstat, and the correct one is a 195F.
If the engine is running at proper temp, verified with a temp gun not the dash gauge or what the ECM thinks the temp is, then next most likely suspect is the coolant temperature sensor (CTS) - you can test it with an ohmmeter or use a scanner to see what it's reporting to the ECM, but if it's looking old and cruddy you might as well spend a few bucks to replace it - buy a good one like a Delphi/AC Delco. These have a lot of power over your fuel mixture and when they go bad they tend to send a colder than actual temp reading to the ECM, making it richen up the mixture.
Back to the MAP, a bad MAP or problem with the MAP circuit can have a profound effect on how well your engine runs.