Barca are six points clear at the top thanks to a 31st game without defeat – extending their Spanish record.
Messi opened the scoring from just outside the box for goal number 300 but Carlos Castro levelled moments later.
Messi added his second from a pass by Luis Suarez, who then had a penalty saved before curling home a third goal.
On Sunday, Messi rolled a penalty into Suarez’s path for the Uruguayan to complete his hat-trick in a 6-1 win over Celta Vigo.
But Suarez did not return the favour in Gijon, and keeper Ivan Cuellar guessed the right way to keep out his penalty kick.
Barcelona have now failed to score seven of their 15 directly taken penalties this season.
La Liga strugglers Sporting named a weakened team – instead prioritising Saturday’s trip to Real Betis – with loan signing Alen Halilovic starting against his parent club.