With leaders Leeds not playing until Sunday, City knew a victory at Ewood Park would take them top and Pukki ensured they got what they wanted as he bagged his 15th and most valuable goal of the season four minutes from time.
Jarrod Bowen scored twice and missed a penalty as Hull eased their relegation fears with a 3-2 Sky Bet Championship win over play-off contenders Swansea in front of a sparse crowd of 10,848 at the KCOM Stadium.
The evening kick-off was shunned by fans favouring pre-Christmas celebrations as Hull punished the visitors for missing a number of first-half chances.
Dwight Gayle fired a hat-trick as West Brom kept the heat on the top two with a 4-0 win at Rotherham.
Gayle had his treble wrapped up by the 54th minute, with the other from Harvey Barnes. Ryan Manning missed a late penalty for Rotherham.
Middlesbrough are fourth, George Friend getting them a 1-0 win at managerless Reading, while Billy Sharp's goal shortly after the break earned Sheffield United a 1-1 draw at Ipswich, who had gone in front through Ellis Harrison in the 38th minute.
Derby and Bristol City played out a 1-1 draw, Jamie Paterson and Martyn Waghorn trading goals, while Saido Berahino struck as Stoke beat Millwall 1-0.
Birmingham enjoyed a fine away day at Wigan, returning from Lancashire with a 3-0 win.
Che Adams got them going, with Michael Morrison and Jacques Maghoma also on target.
Managerless Sheffield Wednesday gave whoever their new boss may be - and long-time Steve Bruce lieutenants Steve Agnew and Stephen Clemence were at Hillsborough - something to build on as they beat Preston 1-0.
Ben Pearson's 26th-minute red card gave them a leg up, with the recalled Michael Hector scoring the winner just after the hour.
Neal Maupay ended Brentford's horror run of form as they beat struggling Bolton 1-0, while QPR won at Nottingham Forest at the 35th time of asking thanks to Toni Leistner.
Follow Sporting Life on social media - find us on Facebook here or tweet @SportingLifeFC
Related football links