Savage threw for a career-high 424 yards on 23-of-33 passing with three scoring passes to freshman Tyler Boyd.
The Panthers (2-1, 1-1) never trailed and claimed their first ACC victory despite receiving plenty of scares down the stretch from a persistent Duke team.
Brandon Connette had four touchdown passes and four interceptions, and he rushed for 101 yards and two touchdowns for Duke (2-2, 0-2).
Connette's 4-yard touchdown run with 3:17 left pulled the Blue Devils within three. Pitt recovered the onside kick, and Savage's 15-yard pass to Kevin Weatherspoon on third-and-7 helped the Panthers run out the clock.
The teams combined for 1,130 total yards.
Savage surpassed both of the major career highs he set for Rutgers in 2009 -- or, two transfers ago -- before halftime of this one while becoming the first ACC player to throw for six scores since Virginia's Dan Ellis and Florida State's Chris Weinke both did it on Nov. 13, 1999.
He had plenty of help from his big playmakers: Devin Street had touchdown catches of 67 and 21 yards and finished with a career-high 166 yards receiving. Boyd scored on catches of 69, 27 and 14 yards to go along with his season-high 154 yards.
Freshman James Conner rushed for a season-high 173 yards and had a short, early touchdown run.
But every time it looked like the Panthers finally gave themselves some breathing room, the Blue Devils stormed right back.
Connette pulled Duke to within 10 points with 13:36 left when he threw a 75-yard touchdown pass to Brandon Braxton and then rushed 1 yard for a TD to make it 51-41.
But he threw interceptions on both of Duke's next possessions, with linebacker Anthony Gonzalez returning the last one 33 yards for what seemed like the backbreaking touchdown with 8:30 remaining.
Connette then started the Blue Devils' final comeback attempt with a 5-yard touchdown pass to Braxton Deaver with 5:30 left, making it 58-48.
Duke forced a punt attempt and got the ball at the Pitt 30 after punter Matt Yoklic had trouble with a long snap. That set up Connette's last touchdown run.
Connette finished 21 of 32 for 323 yards and also had a 16-yard touchdown pass to Max McCaffrey. The Blue Devils gained 532 yards but found it nearly impossible to stop a Pitt offense that entered at No. 66 in the Bowl Subdivision with an average of 412 total yards.
Boyd, who had 134 yards receiving last week against New Mexico, became the first Pitt freshman with three touchdown catches in a game since Larry Fitzgerald did it against Virginia Tech in 2002 and the first freshman with back-to-back 100-yard receiving performances since Antonio Bryant in 1999.
That overshadowed a huge day for Crowder, who had 279 all-purpose yards and scored touchdowns three different ways.
He rushed 7 yards for a touchdown, caught a 62-yard TD pass from Connette and brought back a punt 82 yards for a score to pull Duke to 30-28 late in the first half.
Savage countered with his fourth TD pass -- and third to Boyd -- with 24 seconds left, making it 37-28 at the break.
Savage then capped Pitt's opening possession of the second half with a 21-yard scoring strike to Street. Touchdown No. 6 -- a 17-yarder to Scott Orndoff late in the third -- gave the Panthers their largest lead at 51-28.