Harris finished with 29 points and 11 assists, while Vince Carter logged 38 points on 12-of-25 shooting from the field for the Nets, who were coming off a 1-3 homestand.
Danny Granger, who missed the previous two games with a viral infection, posted 26 points for the Pacers, who had won three of four coming in. Brandon Rush added 22 points and eight boards in the setback.
A pair of Keyon Dooling free throws gave the Nets a 106-105 lead with under a minute to play. Granger had a chance to take the lead back or at least tie things but missed a pair from the stripe on the next possession.
Carter's off-balanced jumper was off the mark with 20 ticks remaining and the Pacers decided not to hold for the last shot, as Granger buried a mid-range jumper for a one-point lead with 10 seconds on the clock.
After a Nets timeout, Harris had the ball at the top of the key while being guarded by Jarrett Jack. The up-and-coming star shook the defender and rose with his foot on the three-point line, and the game-winner rattled home at the buzzer.
It was the Carter show for the visitors in the first quarter as the veteran North Carolina product scored 18 points in the frame. Unfortunately for the Nets, Indiana's balanced attack kept pace and the game was tied, 30-30, heading to the second.
The largest lead for either team in the second quarter, which ended with the Pacers ahead 57-56, was a mere three points.
The story stayed the same in the third, as a mini 8-2 run midway through the frame helped New Jersey take a slim 83-81 lead to the pivotal fourth quarter.
The clubs traded quick spurts throughout the final stanza. Dooling and Carter hit three-balls around a pair of Harris free throws for a 104-97 Nets lead with 3:43 to play.
The Pacers responded immediately. Rush hit from downtown, Jeff Foster made a basket in the lane and Travis Diener drilled a three-pointer from straightaway to go ahead, 105-104, with 2:14 left.