Timo Werner thought he had settled the argument with a smart, late second goal in the closing stages, only for Ozdoev to lash home a half-volley from the edge of the area at the death.
Juventus’ 1-0 win over Malmo secured top spot for the Italians, leaving defending champions Chelsea sweating on a potentially-tougher draw in the last-16 knockout stage.
Werner laid on a tap-in for fit-again Romelu Lukaku in an industrious night in Russia, but Thomas Tuchel’s men were unable to shake off a host of injury issues on their travels.
Claudinho and Sardar Azmoun plundered two quick goals to cancel out Werner’s second-minute opener.
While the draw hardly represents major damage, taskmaster boss Tuchel will doubtless be frustrated by another below-par showing from a Chelsea side in the middle of a minor funk.
Tuchel made eight changes to the starting line-up from Saturday’s chastening 3-2 defeat at West Ham that saw the Blues slip from the Premier League summit.
The continued injuries to wing-back Ben Chilwell and midfielders N’Golo Kante, Mateo Kovacic and Jorginho has stretched Tuchel’s resources.
And with qualification for the knockout phase already in the bag, the St Petersburg trip offered a rare chance to experiment in competitive action.
The selections were not without risk however, and Saul certainly failed to impress in his new wide berth.
James’ general technical excellence shone through, but Chelsea’s senior defensive midfield trio boast superlative tactical nous which at this point appears unmatched in the rest of the squad.
Saul was brought in as the fourth defensive midfielder but finds himself at best fifth choice in that role, behind Ruben Loftus-Cheek as well as the regular operators.
The Spaniard’s continued struggle only adds further curiosity to the decision to send impressive Scotland midfielder Billy Gilmour on loan to Norwich for the season.
Chelsea seized the perfect start with Werner tapping the ball in from a corner inside two minutes.
But just as quickly as Chelsea took control, the Blues relinquished that dominance.
The visitors refused to heed the warning signs, as Kepa Arrizabalaga saved from Malcolm in a one-on-one and Azmoun headed wide from Claudinho’s cross.
Chelsea continued to ease off the throttle, and paid the price.
Claudinho ghosted into the box to nod home Santos’ cross after the Blues failed to clear their lines.
And to add insult to injury, Ross Barkley conceded possession almost immediately after the restart.
Azmoun slipped Chelsea’s defensive line, rounded Kepa and slotted into the net to put Zenit 2-1 up and complete a shock turnaround.
The visitors tentatively got their act together after half-time with Lukaku eventually levelling the tie with a facile finish.
Barkley slid a neat ball through for Werner and his ball across the box allowed Lukaku the easiest tap in.
Kepa kept Chelsea in the contest again with a smart save from Azmoun’s thumping header.
The Spaniard reacted sharply to bat away with the ball already behind him when he swatted clear.
Just as Chelsea’s chances to top the group appeared to be ebbing away, Werner popped up with a smart second.
Christian Pulisic traded passes with Hakim Ziyech before feeding Werner to feet in the box. The Germany forward checked inside his man before angling into the net in style.
Chelsea thought they were done and dusted, only to fall prey to another sucker punch.
The Blues failed to clear from a facile knock-down, Ozdoev reacted quickest and lashed the ball into the net from distance.
Register for free to continue reading
Registration is a free and easy way to support our truly independent journalism
By registering, you will also enjoy limited access to Premium articles, exclusive newsletters, commenting, and virtual events with our leading journalists
Already have an account? sign in
Join our new commenting forum
Join thought-provoking conversations, follow other Independent readers and see their replies