Stewart, who wasn't in contention for most of the race, charged through the pack during final 10 laps took the lead from Juan Pablo Montoya in the closing stages.
He finished 0.8 seconds ahead of Montoya for the FedEx 400 title, notching his 48th career win in NASCAR's Sprint Cup series but his first since July 2012 at Daytona.
It was also Stewart's third career victory at Dover.
Jimmie Johnson, who led for 143 laps, ended in 17th after fading down the stretch.
Duggar sisters unveil Christian dating rules in new book
Astronomers offer more expansive view of universe