先回答第一问:拼音当然可以覆盖所有汉字,前提是标准现代汉语普通话——因为现代汉语拼音就是针对现代汉语普通话的注音系统。
如果你觉得某两个字发音不一样但拼音是一样的,那么大概有两种可能:一是你普通话不标准,二是这种语音的区别不构成辨义特征。
第一种情况比如「酒」和「九」,这两个字分别是所谓尖音字和团音字,现代汉语经历了尖团合流后,普通话中这两个字读音一样,拼音自然也一样。但不少方言还是区分尖团音的,如果有口音可能会觉得这两个字发音不一样。
第二种情况比如「刚刚」,在语流中前后两个「刚」很可能是不一样的。普通话里没有浊塞音,gāng 的声母在国际音标里实际上是不送气清音 /k/;而后面这个「刚」很有可能受前者韵尾 /ŋ/ 的影响,实际发音变成浊音 /ɡ/。但这种区别在普通话里不区分意思,拼音也不作区分。
再看第二问:普通话同音字确实比一些方言多一点,但跟拼音没关系。要搞清楚因果关系,拼音只是用来给汉语注音的,是研究了现代汉语普通话的发音,再编制出来的一套方案,普通话该怎么发音并不会受注音方案的影响。指摘汉语同音字其实还是有点不公平的,因为大部分语言的语义最小单位是词,而大部分词都是多音节词;现代汉语其实也是双音节词为主了,只不过有汉字这么个书写系统,每个字都还有各自的意思,但实际说话时用单字词的情况并没有那么多。古汉语确实有很多单字词,一来是当时各种事物、概念大概没有现在这么丰富,二来古汉语的音节确实比现代汉语复杂不少,单字词足以应付;但随着语音的演变,复辅音声母、全浊音声母、塞音韵尾、-m 韵尾等都在现代汉语普通话中消失了,单音节词不太够用了,双音节词才慢慢占领高地。
妄加猜测一下,普通话同音字甚至可能和汉字的关系更大。比如两个字最初被造出来时读音不一样,后来随着语音演化变成一样了,但因为有汉字,写出来不一样,还是可以区分,就不管了。
至于第三问,可以说是完全不现实的。语音是客观存在的,不因主观意志而转移;普通话的文白异读也不发达,试图以此保留一些古音的尝试都以失败告终,比如「一骑 jì 红尘」,这是非常标准的文白异读,文读 jì 和白读 qí 的意思也不一样,但据说现在的语文课本都标成 qí 了;但「斜 xiá」和「斜 xié」就不能算文白异读,因为二者意思都是一样的,纯粹为了押韵改的读音,说白了就是朱熹所谓「葉音」的遗毒,朱熹本人都因此被钉在音韵学的耻辱柱上几百年了。而且所谓的「在/再」和「的/地/得」容易混淆,其实不是人搞混,是输入法搞混,手写一段文字搞混这些字的可以打回小学重修语文了。正确的做法是优化输入法,强行改这些常用字的读音无异于削足适履。