It was the visitors who created the first opportunity after just three minutes of the match, but Carlos Carmona failed to convert from close range.
Gijon were soon made to pay as just two minutes later Isma Lopez fouled Lucas Vazquez in the penalty area and the referee had no hesitation in pointing to the spot.
Cristiano Ronaldo duly stepped up to take the spot-kick and he left Sporting goalkeeper Diego Marino with no chance as he applied a clinical finish.
Ronaldo then missed a great opportunity to make it 2-0 when he headed a James Rodriguez corner over the bar from just seven yards.
The Portuguese ace did not have to wait long for his second goal, as on 18 minutes he produced a superb diving header from a Nacho cross to make it 2-0.
From there it looked like Real would run riot, with Nacho seeing a goal disallowed for offside, but Gijon showed great heart as the half developed, with Moi Gomez stinging the palms of Keylor Navas from close range.
Gijon did manage to get the goal their play deserved on 35 minutes, as after Luka Modric gave the ball away in his own half Isma Lopez and Carmona combined, with the latter providing a neat right-foot finish.
Real missed a great chance to restore their two-goal lead just before the hour mark, as Karim Benzema headed straight at Marino from just six yards out.
Nacho then tested Marino with a left-foot effort from an acute angle, but Gijon still possessed a threat of their own, as Douglas Pereira’s cross-cum-shot just evaded Moi Gomez at the far post.
Gijon then missed a great opportunity to draw level late on, as Duje Cop fired a penalty over the crossbar after substitute Victor Rodriguez was fouled in the area by Nacho.
Real have now won six league matches on the bounce while Gijon remain in the relegation zone.