Real have won every match since 13 September and are four off the world record of Brazilians Coritiba in 2011.
The visitors led 2-1 at half-time with Isco and Gareth Bale scoring either side of Verza’s strike for Almeria.
Iker Casillas saved a Verza penalty before Ronaldo’s late brace took his season tally to 32 goals in 23 games.
The last time Real Madrid failed to win a match was their 2-1 defeat by Atletico Madrid almost three months ago.
They broke Barcelona’s Spanish record of 18 wins in a row on Tuesday against Ludogorets in the Champions League – and few predicted anything other than a comfortable 20th consecutive victory in Friday’s trip to Andalusia.
Almeria, who dropped into the bottom three on goal difference with the defeat, had Miguel Rivera in caretaker charge for one game after the sacking of Francisco Javier Rodriguez, with Juan Ignacio Martinez taking over after this match.
It took Carlo Ancelotti’s side 34 minutes to take the lead through Isco’s fantastic curling effort, the midfielder starting in place of the injured James Rodriguez. But five minutes later Verza had levelled with a stunning half-volley.
However they trailed at half-time through Gareth Bale’s header from Toni Kroos’s cross.
The turning point of the game came when Almeria won a penalty midway through the second half but Casillas guessed right to keep out Verza’s effort.
Ronaldo had a poor game with his only contribution until the 81st minute being a yellow card – but he scored two late goals, with a near-post effort and a shot into an empty net, taking his tally to 25 goals in 14 La Liga games this season.
Real are now five points clear of Barcelona, who have a game in hand, as they prepare to go to Morocco for the Club World Cup.
They take on Cruz Azul or Western Sydney Wanderers in Tuesday’s semi-final, with the final to be played next Saturday.