It could be the O2 sensors throwing a code, but have the codes read so you're not replacing parts that are OK.
I just replaced my O2 sensors with the hope that my mileage will increase - getting 23mpg highway - used to get 26-27mpg. Also I never replaced them after the head gasket blew last year & contaminted them - no check engine light however.
You can go to autozone and have them read it for free. If you don't have an autozone check if any of your local parts stores will read them fro you or if they have a tool rental service where you can borrow a code scanner read it yourself in the parking lot then return it.
I went to Kragen (My local auto zone wont test it) the Kragen had a 5 day wait on the scan tool. I broke down and spent $30 on the scan tool. Ran the test and it gave me back a Code 181 System lean. Could this cause the poor mileage?