Real are now seven points ahead of Villarreal at the top of La Liga but Manuel Pellegrini's team can cut that lead to four points with victory over Sevilla on Sunday.
Title rivals Barcelona are eight points behind Real and have a tricky home match against Getafe also on Sunday.
Real were lucky to pick up a point as Mallorca could have won the match late on, but Daniel Guiza hit the crossbar with the goal at his mercy to let the defending champions off the hook.
Real had mixed memories of playing Mallorca with last season's memorable 3-1 win allowing them to clinch the title on the final day of the season, combined with this season's Kings Cup defeat to the islanders.
Arjen Robben should have opened the scoring after five minutes but the speedy winger chose to avoid using his weaker right foot and sent a good chance wide.
Guiza, Spanish international and second top-scorer in the league with 17 goals, missed an excellent chance for Mallorca on 23 minutes when he performed a neat one-two to get in behind the Real defence but somehow side-footed wide.
Shortly before the break Robben sliced open the Mallorca backline with a mazy run full of pace and Sneijder was on hand to roll the ball in.
However after Ramos, who has a terrible disciplinary record, was issued his marching orders Mallorca pinned Real back in search of an equaliser.
The momentum was with the home side and Valero, only on the pitch five minutes, showed great composure to make it 1-1 before Guiza hit the crossbar from close range to cap a miserable night for him.
Earlier on Saturday Florent Sinama Pongolle, former Liverpool player, scored the decisive goal as Recreativo Huelva climbed out of the bottom three with a 1-0 win at Osasuna.