The home side looked destined for a point against the Verts after a second-half equalizer canceled out an early goal, but the striker bagged all three points with his strike.
Yannick Ferreira-Carrasco opened the scoring early in the game from inside the 18-yard box but the Rouge et Blanc were pegged back four minutes into the second half when Romain Hamouma equalized for the Verts.
Claudio Ranieri's men were struggling to fashion chances for an equalizer but late arrival Ocampos slotted in a James Rodriguez cross at the far post to seal all three points in Monaco's favor.
The home side started stronger, with Rodriguez, Ferreira-Carasco and Radamel Falcao taking the game to Saint-Etienne. An awful back pass from Renaud Cohade rolled straight to the feet of Rodriguez who was denied by a super save from goalkeeper Stephane Ruffier.
But, in the 11th minute, Christopher Galtier's men were behind when Rodriguez threads through ball behind the back four of the visitor team and Belgian attacker Ferreira-Carasco finishes when one-on-one with Ruffier.
Monaco allowed the opposition space to work back into the game but remained the more dominant side as the half drew to a close, despite Franck Tabanou and Romain Hamouma testing the home side's defense
After halftime, though, the Rouge et Blanc were unable to keep a clean sheet any longer. Cohade played a fine pass inside the box after Faouzi Ghoulam's graft to Hamouma, who deftly equalized for the visiting team.
The game became more even after the goal and either side could have taken the lead, though the final 20 minutes saw a surge in chances for Monaco.
Defeat for Ranieri's men would have guaranteed surrendering the top spot in Ligue 1 to either Olympique de Marseille or Paris Saint-Germain this weekend and they pressed hard for all three points late on, with Ferreira-Carasco, Falcao and Joao Moutinho causing problems for Saint-Etienne.
But it was substitute Ocampos, who came on with eight minutes to go, who made the difference for the principality club, notching in from six yards with fewer than four minutes to go at the Stade Louis II.
The win means that Monaco geso top of the Ligue 1 table, but PSG can displace it with win of three goals or more over Marseille in Sunday's Classique.