The 23-year-old angered Fiorentina fans in pre-season when he crossed the rivalry that was intensified by Robert Baggio's switch to Juve in 1990 and he silenced the jeers with a second-half free-kick, before Gonzalo Higuain wrapped things up late on in Massimiliano Allegri's 200th game in charge.
For the most part, the first half was a cagey affair, with a controversial VAR decision which ultimately denied Fiorentina an early penalty chief among the few highlights.
The best opportunity in a first period otherwise devoid of them fell to the hosts just before the break and Juve could count themselves lucky to escape, as the lively Gil Dias fired against the right-hand post of Gianluigi Buffon, who was making his 500th league appearance for the Turin giants.
Initially, proceedings were not hugely improved upon the restart, but Bernardeschi – who has been hit-and-miss since costing Juve €40million – managed to heat things up, netting 10 minutes into the second half.
Juve were forced to withstand plenty of pressure towards the end, though their ever-dependable backline held firm and they hit Fiorentina on the break, as Higuain rounded things off four minutes from the end to move them two points ahead of Napoli at the top of the table, with Maurizio Sarri's men facing Lazio on Saturday.
Although Juve dictated possession during the early exchanges, Fiorentina did an excellent job of restricting their flow of chances, with a Claudio Marchisio effort from 30 yards – which was easily saved by Marco Sportiello – all they could muster.
Fiorentina then seemed to be presented with the perfect chance to take the lead 18th minutes in, as Giorgio Chiellini was penalised for appearing to handle Marco Benassi's cross inside his own area.
But, after much deliberation, Jordan Veretout was denied the opportunity to take the kick, as VAR identified Benassi in an offside when he received the ball even though it appeared to be played to him by Alex Sandro.
Despite that disappointment, Fiorentina seemed to improve thereafter and went agonisingly close to the opener six minutes before the break - Dias breezing past Stephan Lichtsteiner and shooting right-footed on to the left-hand post.
Juve were no better as an attacking entity at the start of the second half, with the pattern of the game initially unchanged.
But Bernardeschi's quick feet on the edge of the box in the 56th minute secured Juve a free-kick and the Italy international picked out the bottom-left corner, exploiting Sportiello's poor positioning.
That forced Fiorentina to become more forward-thinking, though that almost resulted in Juve catching them on the break 11 minutes later – Mario Mandzukic shooting just wide after Douglas Costa's cut-back.
Buffon had to be alert soon after, rushing out to block Cyril Thereau's close-range effort following a driving run courtesy of Giovanni Simeone.
And Juve capitalised on Fiorentina's desperation for an equaliser, hitting them on the break towards the end as Higuian coolly swept past Sportiello for his sixth goal in four games across all competitions.