Abdenasser El Khayati latched on to a neat Stuart Beavon cut-back to fire the hosts ahead before the break.
Beavon pounced to make it 2-0 after Ben Alnwick spilled a Mark Duffy shot, before Gabriel Zakuani was sent-off for a challenge on Timmy Thiele.
Marcus Maddison pulled one back from 30 yards while Jermaine Anderson had an injury-time equaliser ruled out.
Burton boss Jimmy Floyd Hasselbaink told BBC Radio Derby:
Media playback is not supported on this device
"It was rubbish. The second half was even worse. We scored two good goals but I was not happy with how we played, was not happy with the performance, was not happy with the dynamics of the team.
"We became sloppy. We became not Burton Albion. We didn't play the game out as we can. We didn't look (like) a team and that's not what we are about.
"I'm happy with the points, don't get me wrong, but the result should have been so, so, so much better."
Burton Albion hung on to beat a Peterborough United side that played with 10 men for more than half an hour.