Los Blancos made just one alteration from midweek, with Rodrygo dropping to the bench and Dani Carvajal returning while Atletico coach Diego Simeone opted to start Hector Herrera ahead of Saul Niguez.
The hosts should have been ahead in the 11th minute after Karim Benzema spotted goalkeeper Jan Oblak off his line and looped a brilliant strike but the Slovenian made a quick recovery to push his effort into the post.
However, Casemiro eventually gave Zinedine Zidane's charges the lead four minutes later with a towering header inside the box after a well weighted corner by Toni Kroos.
Los Blancos had their tails up after that, controlling the tempo of the match and denying Atletico possession to grow in the game.
Diego Simeone's troops started to fancy their chances in the latter stages of the first stanza but they did not pose any danger to shot-stopper Thibaut Courtois as the hosts went to the break leading by an odd goal.
Second-half substitute Thomas Lemar had a great chance to level matters for Atletico ten minutes inside the second stanza after a cross by Marcos Llorente found him unmarked at the back post but he guided his shot glaringly wide.
Zidane's men doubled their lead in the 63rd minute after Carvajal unleashed a rocket from a rebound just outside the box that ricocheted off the post and unfortunately hit the back side of Oblak before sailing into the back of the net.
Saul came close to pulling a goal back for the visitors in the last ten minutes after he was picked out by Renan Lodi with a cross at the back post but his powerful header was parried away by Courtois.
Lucas Vazquez had a chance to added a third goal for Los Blancos in the last minute after going through on goal but his looping strike was parried over the bar by Oblak, as Real clinched a 2-0 win that took them up to third on the log, just three points behind leaders Atletico, who have a game in hand.