Kovalchuk put Russia on the scoreboard at 14:17 of the second period when he swatted a loose puck past Italy goaltender Jason Muzzati.
Kovalchuk set up Alexander Frolov for Russia's second goal with about six minutes remaining to give the hosts a 2-0 lead. Alexei Morozov later scored a power-play goal with four seconds left in the third.
"We had a lot of scoring chances but you have to give credit to their goalie, he played a great game," Russia defender Sergei Gonchar said. "We stuck to our system even though the scoring wasn't there."
Russia, which improved to 4-0 overall, had outscored its opponents 25-6 in three previous games. The hosts will next play Switzerland on Sunday.
In relegation round action at Mytischi, Oleg Sorokins had two goals and an assist to help Latvia beat Ukraine 5-0 while Morten Ask scored the winner 2:22 into overtime to lift Norway past Austria 3-2.
The four teams in the relegation stage play a round robin, with the top two remaining among world hockey's elite in 2008 and the bottom pair dropping down.
Latvia leads the group with three points, followed by Norway with two and Austria with one.