Russell claimed pole position in the preceding qualifying session, but found himself in fifth place at the end of the first lap, with Esteban Gutierrez taking the lead from the front row.
On lap 5, Albon made his way into the pits and when Leclerc made his first stop three laps later, he found himself behind the Thai-British racer.
Albon dropped deeper into the field when he made his second stop on lap 19 for the hard tyre, while Russell closed in on Leclerc, having recovered from his poor start.
The two battled for the lead before Russell received a time penalty, handing the advantage to Leclerc. Russell managed to overtake and stay ahead of Leclerc, but the latter needed to stay within three seconds in order to receive the race win across the line.
On the penultimate lap, Leclerc picked up a three-second time penalty, neutralising the fight and all-but securing the victory for Russell, who crossed the line on the next lap to take the chequered flag.
Gutierrez was third ahead of Albon who managed to make up a handful of positions after his final pit stop.
Bahrain International Circuit - Winter testing