Kontiola, who plays for Russian side Traktor Chelyabinsk, gave the Finns the lead in the fourth minute in Helsinki.
Alexander Radulov equalised in the second period before Kontiola struck again.
Juhamatti Aaltonen, another Finn who plies his trade in Russia with Metallurg Magnitogorsk, made it 3-1 in the 36th minute.
Ilya Kovalchuk threw the Russians a lifeline when he netted in the 59th minute but he was then ejected along with Finnish defenceman Janne Pesonen after a confrontation between the pair turned ugly.
It was the second defeat in two days for the Russians who lost 2-1 to France on Thursday. Before that they had been unbeaten in 13 games in the competition.
Bernhard Starkbaum followed up his 42 saves in regulation with three shootout stops as Austria beat Slovakia 2-1 in the day's other game in Helsinki.
Finland top the group on 11 points ahead of Russia (nine), United States (nine) and Slovakia (seven).
In Stockholm, Claude Giroux scored one goal and recorded two assists as Canada swept past Belarus 4-1.
Three of the Canadian goals came from powerplays.
Earlier, Zbynek Michalek's third-period goal helped the Czech Republic come back from 2-1 down to secure a 4-2 victory over Slovenia.
Canada lead the Stockholm group on 13 points ahead of Switzerland (11), Sweden (nine) and the Czechs (eight).
The top four in each eight-team group advance to the quarter-finals.