Burnett, who missed the first three weeks of the year while recovering from a fractured right orbital bone sustained during a bunting drill in spring training, walked two and struck out seven.
Joel Hanrahan worked out of a two-on, one-out jam in the ninth for his second save of the season.
Westbrook was good but Burnett was better, throwing 53 of his 76 pitches for strikes and looking like the No. 1 starter the Pirates envisioned when they traded for him in February.
Not a bad debut for a player who woke up planning to pitch at Double-A Altoona for one last rehab start but was activated off the 15-day disabled list in the afternoon when starter Kevin Correia was scratched with pain in his side.
Though Burnett had struggled while working his way back -- posting a 9.53 ERA in three minor league starts -- manager Clint Hurdle believed a return to the big leagues would rejuvenate Burnett.
The 35-year-old certainly looked a little hyped up in his first start in the National League since he pitched for the Marlins in 2005. He walked Rafael Furcal on four pitches, gave up a single to Matt Carpenter and walked Matt Holliday to load the bases with no outs.
Just as the boos started -- perhaps reminding him of his three tumultuous seasons in New York -- Burnett settled down, striking out Carlos Beltran and David Freese then getting Yadier Molina to line out to shortstop to end the threat.
Burnett was nearly flawless the rest of the way, retiring 12 batters at one point, his only real excitement during his last six innings coming at the plate.
Rod Barajas singled with one out in the third, bringing Burnett to the plate in a bunting situation. The crowd roared "no" when Burnett squared up to lay one down, wary Burnett would smack the ball off his face again.
Not this time. He walked on four pitches, getting a relieved round of applause as he trotted to first.
The Cardinals are off to their best start since 2008 thanks to the National League's best offense. St. Louis came in leading the NL in batting average (.287), home runs (20) and hits (142).
Yet the Cardinals mustered little after Burnett settled down. Their best chance to score came in the eighth when they put runners on second and third with one out.
Hanrahan, who hadn't pitched since Sunday due to tightness in his hamstring, issued one-out walks to Freese and Molina in the ninth but worked out of it.
NOTES: Tests done on Correia revealed no significant damage. Manager Clint Hurdle said Correia could possibly start on Monday against Colorado. ... St. Louis center fielder Skip Schumaker was given the day off after smacking into the wall in the first inning Friday. Manager Mike Matheny said Schumaker was a little banged up but would have been available to pinch hit. ... The teams wrap up the series on Sunday. Kyle Lohse (2-0, 0.89 ERA) will start for St. Louis while Erik Bedard (0-3, 2.65 ERA) gets the nod for Pittsburgh.
Link to boxscore: Pittsburgh 2, St. Louis 0