At the break, Pujara was batting on 103 runs while skipper Virat Kohli was giving him company on 69, as the duo put on 154 runs for the unbeaten third wicket.
Starting from overnight 215/2, India looked ready for another hard day's grind, with Kohli reaching his half-century, off 110 balls, in the very first over of the day.
The two batsmen scored quickly in the first hour and kept the scorecard ticking over, before Australia went back to their tactic of cutting runs.
Pat Cummins (2/46) bowled another wonderful spell, extracting most out of the pitch than any other Australian bowler, and he beat the edges of both batsmen on a couple occasions but without any luck.
Nathan Lyon (0/80) bowled with a predominantly leg-side field and into the batsmen. His duel with Pujara was quite remarkable, as the batsman kept turning him to the onside again and again.
On the rare occasion, Lyon pulled his length back and Pujara used his feet well and drove him to the offside against the turn. He played a couple of brilliant cover drives in this method and sped to his hundred in the second hour of play.
At the other end, Kohli had his moments. After being dropped on 47 on day one, he rode his luck flashing through the gap between slips and gully. He was beaten more than Pujara, but also mixed it with glorious drives, particularly one down the ground onside.
Australia kept a tight leash on the scoring rate as 62 runs came from 28 overs in this morning session. Even so, they could not deny Pujara who reached his second hundred of this series off 280 balls just before to lunch.
In doing so, he went past his previous best tally of runs scored in an overseas Test series. He had scored 309 runs in Sri Lanka in 2017, and currently has 325 runs in this ongoing series.
On day one, Mayank Agarwal (76) scored his maiden Test half-century after India won the toss and opted to bat.
The four-match series is pegged at 1-1, after India won the first Test in Adelaide by 31 runs and Australia took the second Test in Perth by 146 runs.