Russian Premier League Wrap: Spartak beat Zenit, Lokomotiv lose
Luciano Spalletti's table-toppers had not dropped a point for more than two months prior to last week's draw with Amkar Perm and looked set to hit the winning trail again on Sunday when Alexander Kerzhakov scored after six minutes.
However, Zenit were blown away by Spartak in the space of 15 minutes either side of the break.
Movsisyan put the home side back on level terms after good work from Denis Glushakov, and added his second a minute before half-time.
His hat-trick arrived three minutes into the second half and, although Hulk reduced the arrears, Glushakov's 83rd-minute strike confirmed victory for Valeri Karpin's men.
Zenit remain three points clear at the top of the league, Lokomotiv Moscow having fallen to a surprise 2-0 loss at Tom Tomsk on Saturday.
Lokomotiv were brought back down to earth after three successive wins through Evgeni Bashkirov's early strike and Pavel Ignatovich's penalty with 39 minutes gone.
The visitors' misery was compounded a minute before the break when Dmitriy Tarasov was sent off for a second bookable offence.
The weekend's big winners were CSKA Moscow, who bounced back from their UEFA Champions League defeat to Manchester City by taking advantage of defeats for the top two with a 4-1 over Terek Grozny.
Seydou Doumbia's early strike set CSKA on their way and the attacker then added to goals from Zoran Tosic and Sergei Ignashevich with a penalty to leave CSKA four goals up at half-time.
Ailton Almeida replied after 70 minutes, but that was scant consolation for Terek.
Dinamo Moscow lie one point behind CSKA after coming from behind to defeat Krylya Sovetov 2-1.
Veteran Igor Semshov put Krylya in front after 22 minutes but Dinamo registered a fourth win in five games as Igor Denisov and Christian Noboa responded, the latter's winner coming with 15 minutes remaining.
Krasnodar remain two points behind Dinamo after Wanderson's effort earned a 1-0 win at Rubin Kazan.
Amkar Perm followed up last week's point against Zenit by defeating Anzhi 1-0, Dmitri Belorukov's late strike ensuring the visitors to Stadion Zvezda remain winless this season.
Kuban Krasnodar are unbeaten in three after hammering Volga 4-0.
Ibrahima Balde helped himself to two goals, while Ivelin Popov and Vladislav Ignatyev were also on target.
The week's first game saw Artem Dzyuba claim his 11th and 12th goals of the season as Rostov triumphed 4-1 at Ural.
Rostov were 2-0 up after 10 minutes through Dzyuba and Arseniy Logashov, and Ural were left with a mountain to climb when Gerson Acevedo was dismissed - for the second time this season - after 37 minutes,
Dzyuba got his second two minutes into the second half and Guelor Kanga added a fourth before Spartak Gogniev's reply for Ural.