Carlos Tevez put Juve ahead after just six minutes and added his second before the half-hour mark.
Hellas striker Luca Toni reduced the arrears early in the second half and just when Juve looked to be heading for their 20th win of the campaign, Gomez headed Romulo's cross for a 2-2 draw.
The outcome in Verona has left the Turin giants nine points clear of second-place Roma, who were held to a goalless result at Lazio.
Roma have a game in hand.
Tevez scored early on with his first chance of the game. Hellas goalkeeper Rafael cleared Asamoah's goal-bound attempt but only as far Tevez, who struck the ball from the heart of the area and into the back of the net.
Juve continued to push forward and made it 2-0 in the 21st minute.
Paul Pogba fed an unmarked Tevez in the box and the Argentinian's six-yard shot beat Rafael.
Tevez wasted a good opportunity to make it 3-0 on the half-hour mark when he hit the ball high and wide after Fernando Llorente's through ball.
The hosts showed more determination after the re-start and were rewarded in the 52nd minute when Toni headed Romulo's free-kick past Juve goalkeeper Gianluigi Buffon.
Osvaldo, who joined Juve on loan from Southampton last week, replaced Llorente and was unlucky not to score on his debut in the 69th minute.
He got behind Andrea Pirlo's pass and fired a shot past Rafael but the ball crashed off the post. Osvaldo then had a goal disallowed for offside.
Toni nearly equalised 11 minutes from time with a close-range effort that was saved by Buffon before Gomez came to the rescue seconds from time.