Die Formel geht fehl wegen der näherungsweisen Gleichsetzung von c(H+) mit der Anfangskonzentration c0 der Säure. Bei so einer geringen Anfangskonzentration dürfen aber die H+ aus der Autoprotolyse des Wassers nicht mehr vernachlässigt werden und du kommst für die pH-Berechnung nicht um einen Ansatz über die Ladungsbilanz herum. Es gilt hier:
c(H+) = c(OH-) + c(ClO4-)
Mit x=c(H+) erhältst du daraus
x = Kw/x + c0
x^2 - c0*x - Kw = 0
Durch Lösen dieser quadratischen Gleichung berechnest du c(H+) und daraus den pH-Wert (ich hab pH=6,89 raus).
Die Ladungsbilanz weist dir auch gleich den Weg zur Beantwortung der zweiten Frage. Wie du siehst, setzt sich die Konzentration an H+ in dieser Lösung aus zwei Beiträgen zusammen: aus der Autoprotolyse des Wassers (dieser Anteil ist gleich c(OH-), denn mit jedem H+ entsteht bei der Autoprotolyse ein OH-) und aus der Dissoziation der Säure (dieser Anteil ist so groß wie c(ClO4-)):
c(H+)_gesamt = c(H+)_aus H2O + c(H+)_aus HClO4
Du musst also c(OH-) berechnen, wobei c(OH-) = Kw / c(H+)_gesamt gilt und dann zu c(H+)_gesamt ins Verhältnis setzen (ich komme auf rund 61 %).