Dembele’s explosive finish in the second half was his first goal since the January transfer window, when Barca told the Frenchman he should leave if he refused to sign a new contract.
But Xavi Hernandez has insisted on reintegrating Dembele in the last few weeks, with Barca needing the 24-year-old in their fight to finish in La Liga’s top four.
“Today he is the best Dembele we have seen and that is what we want,” said Xavi.
This victory puts Barcelona back into fourth place, above Atletico Madrid and now only one point behind Real Betis, who have been dragged into the scrap after they lost 2-1 to Sevilla earlier on Sunday.
Second-placed Sevilla’s win reduces the gap to Real Madrid back to six points.
After bitter contract talks ended in stalemate, Dembele played at Camp Nou against Napoli in the Europa League earlier this month, when Xavi brought him on as a substitute to screeching whistles from the angry home supporters.
Yet many gave their backing to the forward in that game too, demonstrating the emotional bind Barcelona fans have found themselves in, caught between supporting a player Xavi wants to use and venting their frustration at his intention to leave for free.
This time, they whistled again when Dembele was introduced in the 67th minute but then had little choice but to applaud.
Dembele used his pace and power to score a brilliant second goal after Pierre-Emerick Aubameyang had earlier given Barca the lead. He then teed up Luuk de Jong and Memphis Depay with two superb crosses in injury-time.
Xavi appears to have managed the situation as smoothly as possible, with Dembele noticeably going over to celebrate with Barcelona’s coach, who gave him a hug and an approving pat on the head.
“It’s not a question for me, it’s a question for the club, for Ousmane,” Xavi said. “His contract ends (in the summer). Nothing can be ruled out in football. He couldn’t play and now he’s playing. He can be the best in his position.”
Barca have scored four goals in three consecutive games for the first time since May 2017, when 11 of those were claimed by Lionel Messi, Neymar and Luis Suarez.
Aubameyang’s opener was a difficult finish made to look easy, Gerard Pique’s header coming back off the crossbar and the ball forcing Aubameyang to adjust his feet before throwing his body into the air and volleying in.
Dembele’s was no less emphatic as he collected the ball on the left and squared up to Athletic’s Inigo Martinez before darting left towards the line and unleashing a shot that flew past the near post and in.
There was time for two more in injury-time and Dembele turned provider for both, lifting one cross for De Jong to head in before curling another low one into the six-yard box, where Depay finished on the slide.
Sevilla had earlier prevailed against rivals Real Betis as two mistakes from Betis goalkeeper Claudio Bravo proved decisive in a feisty derby at the Ramon Sanchez Pizjuan.
Bravo was recalled after a month out injured but the 38-year-old had a first half to forget, giving away a penalty, which was converted by Ivan Rakitic, before letting Munir El Haddadi’s shot squirm through his fingers.
Betis improved in the second period and might have engineered a comeback had Sergio Canales’ stunning free-kick, which curled beautifully into the corner, hit the net sooner than the 94th minute.
“We were a sham in the first half and then in the second it was the Betis we want to see,” said Betis coach Manuel Pellegrini.
“We will enjoy it, tonight will be a long night,” said Sevilla’s El Haddadi. “We’ll fight to the end.”
Any faint hopes Betis had of pipping their rivals to second place appear now to be over, with their focus diverted to finishing in the top four.
Barcelona and Atletico Madrid, who Betis face next weekend, are both only a point behind while Villarreal are four points back after they thrashed Espanyol 5-1, with Yeremy Pino scoring a hat-trick.