I have no idea about the ammo loads for Russian aircraft (of all the major combatants I probably know the least about the VVS) but a 20mm would naturally have a lower rate of fire than a MG meaning that 640 rounds would equal perhaps 20 secs (?) of firing time which would be more than a lot of cannon-armed fighters.
If you had 12.7mm rounds instead of 20mm you could carry more, that's why a mix of cannon and MG would be best. You get a decent ammo count, and you get good hitting power when it's a definate hit.
it's actually 14 seconds for a hurricane, 11 for a spit, and that's if you hold it down, you would never fire for more that 2 seconds at a time...............
The Spitfire and Hurricane carried the most they could, unless you either want to make them .22 MG instead of .303 which would be silly because it wouldn't do anything. Or you could take out fuel and replace it with more ammo, I think the Spit and Hurri had a decent balance. Especially the Mk IX and onwards.
Here are some stats on the armament loads for the Yak-3 and the La-7. The Yak 3 had 2 12.7mm UBS mg with 250rpg (19 secs) and 1 20mm ShVak with 120rpg (9 secs). The La-7 carried three ShVaks with 200rpg (15 secs). The Yak-3's guns would put out a little under 4lbs of lead a second while the La-7 would spit out nearly twice that (7.92lbs). So the Yak had a slightly longer firing time but after 9 secs its firepower drops by 2/3s while the La-7 delivers a slighty shorter but much heavier punch. I give the edge to the La-7.
The La-7 was a handle in a dogfight in it's own right though. The outcome of a battle between them would probably be determined by height as the Yak-3 was dominate at low altitudes but couldn't hold a candle to the La-7 higher up.