It looked like the Rocks would have to make do with a point and second place after the Tanners cancelled out strikes by Jason Prior and Johnson in a hugely-absorbing clash.
But Johnson had other ideas and gained sweet revenge for the Rocks’ 3-2 defeat at Leatherhead 17 days ago - and put his team in pole position for the title run-in.
Although the Rocks form is good, they were up against a Leatherhead side who had won their last five – including a home win over Darin Killpartrick and Jamie Howell’s team – to move to within eight points off top spot going into this game.
The Rocks showed one change from the team who drew away to Met Police on Saturday, with Matt Whitehead coming in to replace the holidaying James Crane at left-back.
There was an air of expectancy around the ground, which was very well-populated for a midweek fixture.
It was also a clash of the division’s top two league scorers – Leatherhead’s Greg Andrews, who has 28, against the Rocks’ Jason Prior, with 26.
The first chance to threaten came the Rocks’ way but after a good left-to-right build-up, the overlapping Jon Marzetti’s cross was too high and went behind for a goal kick.
Tim Bond was unfortunate to be yellow-carded for what looked a hard but fair challenge on Jack McLeod as he broke down the Tanners right. The free-kick came to nothing.
Then a Michael Birmingham challenge – again tough but legal – led to a melee involving a dozen players. It seemed to have been sparked by an elbow used on Birmingham and the outcome was a yellow card apiece for Birmingham and Chris Boulter.
Johnson gave Leatherhead keeper Chico Ramos his first bit of work of the night with a high cross that might just have crept in at the far post had the stopper not plucked it out the sky.
The Rocks robbed Leatherhead as they dallied inside their own half but Luke Nightingale’s cross from the resultant mini-break was too close to the keeper.
A throw-in on the right led to Prior laying on a chance for Nightingale which a defender deflected over for a corner. And when Johnson swung it in, Prior was there to beat his marker and nod in his 27th goal of the season.
From their next attack the Rocks were appealing for a penalty as Prior went down as the ball came to him. It wasn’t given, but then Kane Wills flashed in a cross-shot which wasn’t far wide of the far post.
Wills won possession in the centre-circle and surged forward before delivering a lofted cross which Prior beat the keeper to, but it went out for a goal kick.
Matt Whitehead was the third Rocks player to go into the book, also for a foul on McLeod.
The Tanners were level on 28 minutes and like the Rocks, their goal came from a corner, with Mu Mann getting the final touch in a scramble at the far post.
Ramos made a brilliant point-blank save to deny Prior from another corner, that after Nightingale had forced a good save from him from a Prior flick after Marzetti’s ball in.
But as the game settled, the equaliser seemed to have taken the sting out of the Rocks’ play.
A free-kick on the left ended with Conor Wilkins finding space for a volley from just outside the box. It hit a Leatherhead limb but fell kindly for Ramos.
It was a full-blooded affair with both sides determined to attack directly at every opportunity.
The Rocks were back in front three minutes before the break when Prior played Johnson through on the left. He held off the challenge of a defender, who went down appealing for a foul, got it on to his right foot and stabbed it past Ramos.
Leatherhead went running to the referee but their protests fell on defe ears.
It might have been 3-1 in first-half injury time as Prior and Nightingale unsettled the visiting defence. Prior teed up Nightingale but his shot was high and wide.
The crowd was 532 – a brilliant effort for a Tuesday night when there was Champions League football on TV. But who needed the Champions League when, for eight quid, you could get entertainment like the Rocks and Tanners were serving up?
There seemed little chance the sides could keep up the first-half pace for another 45 minutes and sure enough there was a more serene start to the second period.
Prior miscued a volley when a corner was only partially cleared.
The first sub of the night to appear was Leatherhead’s Kev Terry, who replaced Elliott Thompson.
There was an injury scare for the Rocks when Marzetti went down in the centre circle clutching his head. Ref Andy Laver, who hadn’t made himself popular with either side all night, angered the Rocks by failing to stop play for half a minute.
Leatherhead should have done better when Terry and Andrews combined to play in Tommy Hutchings in the area, but his attempt at a shot across Stoner was well wide of the mark, so much so it was kept in on the byline by McLeod, whose cross back in was held easily by Stoner.
Leatherhead were level again 18 minutes from time after the Rocks conceded a free-kick 22 yards out. They seemed to have survived when Andrews’ kick was deflected off the wall but Stoner couldn’t get across to it and when it was put back into the six-yard box with Stoner out of position, Liam Pestle drove it home from close in.
The goal brought a change which suggested the Rocks wanted to win this and not settle for a draw. There were 16 minutes left when Dan Royce replaced Wilkins.
Stoner suddenly looked nervous and he failed to hold a shot from Mark Simmonds, instead helping it out for a corner.
Now the impetus was with the Tanners and it was perhaps more a question of whether the Rocks could hold on for a point, rather than go on to claim all three.
Johnson swung in a free-kick from the right touchline with five minutes of normal time left. Axten’s head met it but it was straight at Ramos. Another free-kick from a central area a minute later was perfect for Prior, but he headed well over.
With two minutes left, Johnson worked his way into space near the left touchline and swung over a cross to the far post. It beat the keeper’s reach, hit the woodwork, struck the keeper and went in – to the amazement of everyone.
Frustration was probably a factor in a scything challenge on Johnson by Simmonds which earned the Leatherhead man a booking.
The Tanners made a 90th-minute change, Sol Patterson-Bonner replacing Dan Dean.
Strangely, the officials didn’t indicate how much injury time was to be played.
Leatherhead made their final change, with McLeod replaced by Kieron Lunn.
The ref added on five minutes but it wasn’t enough for Leatherhead to find a third equaliser, or even threaten one, and the final whistle sparked scenes of great joy around the Lane as the Rocks went two points clear at the top of the table with five games to go.
Next up it’s Whyteleafe on Saturday.
Rocks: Stoner, Marzetii, Whitehead, Wills, Axten, Bond, Wilkins, Birmingham, Prior, Nightingale, Johnson. Subs: James, Royce, Wood, Turner, Maynard.
Leatherhead: Ramos, Pestle, Hill, Boulter, Dean, Thompson, McLeod, Simmonds, Andrews, Hutching, Mann. Subs: Terry, Patterson-Bonner, Boswell, Lunn, Russell.
Ref: A Laver (Portsmouth)
Report by Steve Bone