The Welshman sent a left-footed free-kick into the net midway through the first half after Cristiano Ronaldo had opened the scoring with a thunderous strike from over 30 yards out.
Karim Benzema then widened the scoreline even further before the break, taking advantage of a fine move from Luka Modric, and in the second half Angel Di Maria scored his second goal in as many games before substitute Alvaro Morata piled further misery on Liga whipping boys Betis.
Rayo Vallecano were pushed into further relegation trouble after losing 2-0 away to fellow strugglers Elche.
The outcome of the game was never in doubt once the visitors went a goal and a player down after 19 minutes, Raul Baena shown a red card for bringing down Coro in the area and Edu Albacar scoring from the spot.
Paco Jemez's side could only seek to limit the damage for the remainder of the game and did a good job of it until Javi Marquez doubled the lead on 79 minutes.
The Madrid side had beaten Getafe in their last outing and had the opportunity to leapfrog their opponents and climb out of the relegation zone. Instead they slipped five points behind Elche, who picked up their first win in six games and moved up to 14th in the table.
Osasuna stretched their unbeaten league run to five Primera Division matches with a battling goalless draw at Granada.
The Pamplona-based side had found themselves slipping perilously close to the relegation zone but victories over Espanyol and Real Betis in their last two matches, combined with previous draws against Real Madrid and Celta Vigo, had eased their concerns.
And they picked up another valuable point at ninth-placed Granada in a match the home side largely controlled - especially in the first half - but could not find a goal.
Espanyol captain Sergio Garcia struck a superb winner two minutes from time to earn his team a 1-0 victory over Celta Vigo.
Javier Aguirre's side headed into the contest on the back of two straight defeats in La Liga, but returned to winning ways thanks to Garcia's brilliant late strike in an otherwise dour encounter at Estadi Cornella-El Prat.
The result lifted Espanyol to eighth in the standings and left Celta 16th, although Luis Enrique's men will count themselves unfortunate to have headed away from Barcelona empty-handed having more than held their own against largely negative opposition.