Tello put Barcelona in front nine minutes into the match while Messi and Carlos Vela traded second-half goals in the 72nd and 74th minutes, respectively.
The contest was quite open from the start as the two sides traded clear-cut scoring opportunities inside the opening five minutes.
Messi came close first as he found himself one-on-one with Claudio Bravo, but the Argentine was unable to convert the chance as the Chilean 'keeper produced a fine save.
Real Sociedad responded immediately as Antoine Griezmann found himself through on goal, but it was Victor Valdes's turn to save the day, thwarting the French attacker's attempt to put the visitors in front.
It did not take Barcelona long to finally break through, as Messi turned provider for youngster Tello. The 20-year-old, making his first La Liga start, latched on to a through ball and slipped a shot past Bravo for his first career La Liga goal.
Barcelona nearly grabbed a second goal in the 69th minute when Tello lashed a shot toward goal, but Dani Alves redirected the ball over the goal line from an offside position and the goal was disallowed.
The second goal came just two minutes later as Messi latched on to a curling ball played in behind the Real Sociedad defense and volleyed his effort past an on-rushing Bravo.
Real Sociedad quickly pulled one back, as Thiago Alcantara was caught in possession by Vela, and the Mexican striker slotted a shot past Valdes in the 74th minute.
It proved to be nothing more than a consolation goal for the striker on loan from Arsenal, as the match ended in favor of the reigning European champions.
Barcelona extends its unbeaten run in La Liga play to eight games, but its six draws this season have seen the Catalans fall behind its main title threat. They remain seven points off the pace set by Real Madrid after the Galacticos edged Getafe, 1-0, on Saturday to improve to 55 points on the year.
Real Sociedad falls for the ninth time this season as it occupies 13th place in the table on 24 points.
Real Madrid 1, Getafe 0
Getafe, Spain - Real Madrid narrowly defeated Getafe with a 1-0 win at the Coliseum Alfonso Perez on Saturday to maintain its lead at the top of the La Liga table.
Sergio Ramos provided the lone goal of the game in the 18th minute, helping the visitors claim their fifth-straight victory.
Real Madrid preserves its seven-point lead over Barcelona as it sets the pace in Spain with 55 points through 21 games, while Getafe suffers its first league loss in six matches, remaining tied with Osasuna on 27 points.
Athletic Bilbao 3, Espanyol 3
Bilbao, Spain - Athletic Bilbao and Espanyol played to a back-and-forth 3-3 draw at San Mames on Saturday with all six goals coming from different scorers.
Oscar de Marcos, Fernando Llorente, and Javi Martinez of Athletic Bilbao alternated goals with Romaric and Vladimir Weiss of Espanyol, but it wasn't until second-half stoppage time that the visitors claimed the ultimate equalizer. Uruguayan midfielder Juan Albin scored at the death for Espanyol to split the points.
The two sides remain separated by just two points as Espanyol occupies fifth place on 32 points while Bilbao sits in sixth with 30 points.
Levante 1, Racing 1
Valencia, Spain - Levante and Racing posted goals on opposite sides of halftime as the two teams played to a 1-1 draw at the Ciutat de Valencia on Saturday.
Arouna Kone opened the scoring for the home side in the 23rd minute, but it was canceled out by Racing's Manuel Arana in the 61st minute.
Levante remains fourth despite staying level with Espanyol on 32 points, while Racing's second-straight draw lifts the club to 22 points, two points clear of the relegation zone.
Mallorca 1, Real Betis 0
Mallorca, Spain - Mallorca claimed a 1-0 win over Real Betis in an ugly affair at the Estadio Son Moix on Saturday.
Chori Castro notched the lone goal of the game in the 24th minute, but it was overshadowed by red cards issued to Ivan Ramis and Victor of Mallorca as well as Mario of Real Betis in the second half.
Real Betis has lost three of its last four to drop to 14th place on 23 points, while Mallorca jumps to 12th place by improving to 25 points.