Several thousand Dortmund supporters spent the opening 20 minutes away from their seats at the Mercedes Benz arena while a banner saying 'football should be affordable' stretched across the empty spaces.
The visiting fans, however, got their money's worth for the entrance fee when German international Marco Reus fired the ball in from close range in the fifth minute.
Stuttgart's Lukas Rupp levelled with a deflected effort in the 21st minute before a shower of tennis balls cascaded on to field from the Dortmund section.
News that makes sense
Your trusted source for staying up-to-date with the world around you. Get free daily news updates and analysis, straight to your inbox.
Reus then turned provider by sending Pierre-Emerick Aubameyang through for a fine finish.
Aubameyang created the third goal for Henrikh Mkhitaryan with a minute to go.
Elsewhere, Werder Bremen went through with a 3-1 victory at Bayer Leverkusen who had Brazilian defender Wendell sent off in the 41st minute.
Favourites Bayern Munich visit second tier VfL Bochum on Wednesday when Hertha Berlin also travel to second tier Heidenheim.
(Reporting by Karolos Grohmann; Editing by Tony Jimenez)
