Mainz battle from behind
Last Updated: 25/01/14 5:59pm
Shinji Okazaki takes on Daniel Schwaab
The home side went ahead after 11 minutes through Mohammed Abdellaoue, but Shinji Okazaki equalised against his former team in the 40th minute before Saller settled the contest three minutes from time.
Mainz are now unbeaten in four Bundesliga matches and knocking on the door of the European places.
Stuttgart had the first chance and used it to take the lead, with Konstantin Rausch's cross falling nicely for Vedad Ibisevic, whose header was parried by Mainz goalkeeper Loris Karius only for Abdellaoue to pounce on the rebound.
Stuttgart then had the ball in the net again after 26 minutes, but Martin Harnik's strike was disallowed as Abdellaoue fouled Okazaki in the box.
And Okazaki grabbed a leveller against his former team five minutes before the break. Christoph Moritz threaded a neat pass through to the Japan international, who steered the ball past Stuttgart goalkeeper Sven Ulreich before finishing into an empty net.
The hosts came close to regaining the lead 12 minutes after the break but Ibisevic's shot swerved narrowly off target.
Mainz had another chance in the 63rd minute but Junior Diaz's header found only the side netting.
However, the visitors snatched the points with a second goal in the 87th minute as Joo-Ho Park's cross from the right was headed in by Saller from a tight angle just four minutes after his introduction on the pitch.