Antonio Sanabria's header in injury time stole the points as Los Blancos poured forward looking for a winning strike.
Ronaldo returned to Los Blancos' starting XI after completing a five-game ban, with Gareth Bale and Isco supporting the Portugal skipper up front.
Toni Kroos and Marcelo also started as manager Zinedine Zidane rotated his lineup.
Fox Soccer hailed Ronaldo's return:
There was almost a stunner in the opening minutes, as the visitors nearly gained the lead through Sanabria. However, the score remained goalless thanks to Dani Carvajal, who miraculously cleared the ball from off the line.
The favour was then returned at the opposite end of the pitch, with Ronaldo frustrated to see Javi Garcia clear his effort as it was heading in the net.
Ronaldo and Bale remained a threat throughout the first half as the hosts dominated possession, but Betis always appeared dangerous on the counter-attack.
The goalless first period underlined Real's frustrations, but Betis did not deserve to enter the interval behind.
WhoScored.com highlighted the player ratings at half-time:
Both teams went close in the opening stages of the second half, with Francis running clear of the Los Blancos defence, only to fluff his lines at the final second. Carvajal then met a Ronaldo cross, but he couldn't make a clean contact as he attempted to slide the ball home.
The Bernabeu crowd was clearly not impressed as Real's men failed time and again to break the deadlock, and Ronaldo couldn't make his mark despite a plethora of chances.
There was a frantic finish, with Madrid searching for a winner and consequently moving defender Sergio Ramos up to centre-forward.
As the clock ticked down to its final minute, Betis appeared to have stolen the points when Sanabria netted, but the player was adjudged offside.
Rafael Hernandez of Grup 14 passed comment in the dying embers of the game:
The disallowed effort only encouraged Madrid to attack one final time, but Zidane's reckless team cracked as Sanabria directed a last-gasp header into the bottom corner.
Madrid's players collapsed to their knees at the final whistle, and the result left the champions languishing in seventh in La Liga, seven points behind leaders Barcelona.