Ronaldo's penalty double edges Juve closer to title in Atalanta draw
But despite trailing twice and being outplayed for long periods, Maurizio Sarri's Juventus moved eight points clear at the top with six matches remaining as Ronaldo took his tally to 28 league goals this season.
"We can't make calculations yet, we can't take our foot off the gas until we are mathematically champions," said Juve captain Leonardo Bonucci.
It was an ultimately frustrating outing for Atalanta who stay third, nine points off the pace, after conceding both spot-kicks for handball.
"What are we meant to do, cut our arms off? You can at most put your arms in front of your body," Atalanta coach Gian Piero Gasperini told DAZN.
"The interpretation of the rule is not the same here as elsewhere. Other countries don't give penalties like that.
"These are the rules here, fine."
Juve started brightly but it did not take long for the visitors to take control and start to dominate possession.
Josip Ilicic fired the first real chance of the game wide, but Atalanta grabbed the lead in the 16th minute, scoring for the 25th consecutive match in all competitions.
Papu Gomez was the creator, wriggling free in midfield before exchanging passes with Duvan Zapata before sliding the ball back for the Colombian to drill home his 15th league goal of the campaign.
The goal made Atalanta the first Serie A club in almost 70 years to have three players score 15 times in a league season, with Zapata joining Ilicic and Luis Muriel in reaching the mark.
Zapata was proving a real nuisance for Juve, with Matthijs de Ligt doing well to block another goalbound effort, before the striker narrowly failed to connect with Timothy Castagne's cross.
Paulo Dybala almost levelled for the hosts against the run of play, but his volley was deflected wide.
The reigning champions were gifted a route back into the game nine minutes after half-time as Marten de Roon was penalised for handling Dybala's cross.
Ronaldo stepped up to score his 27th Serie A goal this term, drawing him within two of Lazio's Ciro Immobile at the top of the goalscoring charts.
Atalanta continued to attack in search of the victory they needed to boost their title hopes, but shortly after substitute Muriel fired a free-kick into the wall, Malinovskiy's low strike flicked the base of the post.
Malinovskiy did put Atalanta back into the lead in the 81st minute, as Muriel picked out his fellow sub to hammer a fierce shot past Wojciech Szczesny.
- Lazio stumble again -
Earlier on Saturday, Lazio's title dream suffered yet another setback as Francesco Caputo's injury-time header grabbed Sassuolo a late victory at the Stadio Olimpico.
The capital club sit eight points adrift of Juve in their tilt at a first league title since 2000, but have suffered three straight defeats.
"Talking about the Scudetto was always a bit of a stretch and we have to look reality in the face," coach Simone Inzaghi told Sky Sport Italia.
"That doesn't mean we will give up. Next season, in the Champions League, we'll be able to rotate the squad more."
Luis Alberto gave Lazio a first-half lead, but that was their only shot on target in the match as Sassuolo fought back through goals from Giacomo Raspadori, on his full league debut, and Caputo.
Roma strengthened their grip on a Europa League slot with a comfortable 3-0 win at relegation-threatened Brescia.