The Yellow Submarine should probably have been ahead at the break but they had to wait until the 57th minute to take the lead when Marco Ruben slotted in.
Borja Valero then doubled their lead two minutes later with a fine strike before Bruno Soriano added a late third as Villarreal, for whom new coach Jose Molina was taking charge of his third match, recorded their first triumph since defeating Real Betis on November 19.
It also allowed the east coast club - who finished fourth last season - to climb out of the bottom three and up to 17th spot, level on 19 points with 18th-placed Granada and one more than Sporting, who drop to 19th.
Villarreal had picked up only one point from their opening two matches under Molina, drawing against local rivals Valencia in their last home match, but they were on top for much of tonight's encounter at El Madrigal and thoroughly deserved the win.
Visiting goalkeeper Juan Pablo Colinas was called into action in the 19th minute to parry an effort from Joselu and Mateo Musacchio was unable to turn in the rebound.
Cani then sent a shot just wide for the hosts before Juan Pablo produced another crucial save to deny Valero when one-on-one. Valero also saw a long-range effort whistle not far wide just before the break.
Villarreal were finally rewarded for their endeavours just before the hour mark when Ruben put them ahead with a low shot from inside the area.
Soon after the hosts were celebrating a second goal as Valero found the top corner with a stunning left-footed drive from 25 yards.
That left Villarreal in control but, having surrendered a 2-0 lead in drawing 2-2 with Valencia a fortnight ago, they knew they could not relax.
However, Sporting cannot boast the same threat as Valencia and Villarreal comfortably kept their opponents at bay before making it 3-0 in stoppage time through Bruno, who followed in Valero's footsteps with an impressive finish from the edge of the box.