Svg en sağlam olanıdır. Fakat sayfa içerisinde aşırı kullanılırsa dediğiniz gibi html boyutunu yükseltir. Png olarak kullanmak en kötü yöntem olur. Çünkü tarayıcı her bir resim için sunucuya ekstra sorgu gönderecek. Bu durumda en mantıklı yöntem css sprite özelliği olacaktır. Png dosyalarını tek bir resimde birleştirip css background ile icon gibi kullanabilirsiniz. Google'dan css sprite generator diye aratırsanız bir sürü site çıkar karşınıza.