City players were furious on 35 minutes when Chelsea were awarded a penalty for a handball. Referee Rebecca Welch judged that the ball had hit Ellen White on the arm and gave her a yellow card. However, replays showed that the ball seemed to have hit Demi Stokes' hip.
With no VAR in the Women's Super League, Welch's decision stood and Lucy Bronze was forced to escort a disbelieving White away so Mjelde could step up and slot the penalty past Ellie Roebuck who dived the wrong way.
The goal buoyed Chelsea and they started the second half with several attacks on the City goal.
Chelsea set up a beautiful piece of play on 52 minutes when Erin Cuthbert broke off and crossed a ball to Kirby. The forward curled a ball into Kerr's path who sent the ball skyrocketing over the bar.
The Australia international, who has had a tough start to the season, made up for her misses four minutes later. Kirby sent in another cross and this time Kerr put it in the back of the net.
After the drama of Chelsea's first half goal, it was City's turn to benefit from a handball with Millie Bright the guilty party. Kelly stepped up to take the spot kick and seared it into the roof of the net.
A mistake from Roebuck on 77 minutes which saw her come out of her box for an oncoming ball was swiftly punished by Kirby who slotted the ball into the net.
Chelsea won the 2019-20 Women's Super League on a points-per-game basis after it was cancelled due to the coronavirus pandemic, just beating City to the title.
Saturday's win means Chelsea continue their unbeaten run and sit third behind Arsenal and Everton. The loss puts City in fifth place.
"I thought we were ruthless, maybe could have had more chances, dominant throughout, aggressive and comfortable winners," Chelsea manager Emma Hayes said after the game.
"It's not easy to pick a team every week. I have some unhappy faces."