Betis were the better side for much of the first half, but an opportunist strike from Michael Owen and a thunderbolt from fullback Roberto Carlos put Real 2-0 up at the break.
Midfielder Edu pulled one back for the visitors with a sharp strike on the turn early in the second half, but centre back Ivan Helguera snuffed out any hopes of a comeback when he looped a header over keeper Antonio Doblas two minutes later.
Barcelona, who were held to a 0-0 draw at home by city rivals Espanyol on Tuesday, lead the standings with 59 points, Real follow on 53, a distant 10 ahead of in-form Villarreal.
Manuel Pelligrini's side climbed into third thanks to a 2-1 win at home to relegation-threatened Real Mallorca, Uruguayan striker Diego Forlan snatching a late winner to take his tally for the season to 16.
Earlier Sevilla and Valencia fought out a dramatic 2-2 draw that kept the teams in the hunt for the Champions League places.
Sevilla striker Julio Baptista, who had equalised when he cracked home a penalty midway through the second half, missed a golden opportunity to seal victory when he skied another spot kick over the bar just six minutes from time.
Valencia, who got off to a winning start under new coach Antonio Lopez with a 2-1 victory over Betis at the weekend, were also left ruing their bad luck when they had a late goal controversially disallowed for a foul.
The result left Sevilla fourth in the standings, level on points with Villarreal and one ahead of champions Valencia.