Always enter and leave the USA on the same passport. If you're American, it has to be the US one.
I'm dual US/Swiss, and I always enter and leave the country with the US passport. I always check in showing both passports to the airline. Pretty much whenever I enter any other country I use the Swiss one.
My recommendation is to use the German passport to leave and enter the US. Don't bother showing immigration the Mexican one. Don't even mention it. You can probably add the German passport on the reservation, and it should work fine. Show both passports to the checkin agent and you should be okay.
Hopefully some non-US dual citizen will comment on their experiences.