After Victorino Fernandes cancelled out Brandon Fernandes' third-minute strike in the 34th minute, Sawhney (90+2) scored the winner to give Mumbai FC full points and continue their winning streak.
Sawhney missed a penalty earlier in the second half before Santosh Kashyap's men made it two wins in as many games.
Going into the match, the biggest change for the Red Machines was the introduction of Anthony Wolfe who led the Churchill Brothers attack with Brandon dropping in just behind him.
Alfred Fernandes' men had the best possible start when they opened the scoring in the third minute when Pratik Chowdhury conceded a freekick just outside the box after he brought down Churchill winger Clifford Miranda who was trying to make his way into the box.
More From This Section
The foul proved to be costly as Brandon curled a beautiful free-kick past Laxmikant Kattimani and draw first blood. The Goan midfielder took two short strides and with very little backlift managed to get the ball dipping low into the far corner.
Kashyap replaced Farukh Choudhary with the pacy winger Nikhil Kadam to offer more width to stage a fightback.
Rowilson Rodrigues hesitated with a header clearance which allowed Victorino Fernandes to pounce on the error and slotted the ball past Priyant to make it level pegging in the 34th minute.
Mumbai finished the half stronger as they managed to get themselves back into the game as the half finished 1-1.
Both teams made substitutions at the half-way mark of the second half with coach Alfred replacing Clifford with Anthony D'Souza while Mumbai FC skipper Steven Dias was taken off for Karan Sawhney.
All this was about to change when the referee awarded a penalty to Mumbai FC as Churchill defender Adil Khan pushed Hitesh Sharma inside the box in the 78th minute.
Young Sawhney stepped up to take the penalty, but his weak effort was comfortably saved by Priyant diving on his right.