Even with tones though, there are still too many characters sounding exactly the same. In a Chinese dictionary (you might want to pause for a moment and imagine what a Chinese dictionary looks like. if you come across an unknown English word in writing, you can look it up by spelling. but what's the equivalent thing to do for a chinese character?), under any one sound specification, you can easily find 10-20 characters.
where I disagree is that, yes, classic written Chinese is tricky to understand, but not in the sense that they are mostly one-syllable words. they are tricky to understand in the same sense that Shakespearean (or Chaucerian) English was tricky to understand to modern English speakers - due to unfamiliar vocabulary and old-style grammar. if this opinion is valid, I further propose that, when the Chinese talk, they might rely more heavily on semantics to parse sentences in real-time, since based on sound alone there might be too many character candidates. in other words, they use what's being talked about to do some pretty heavy-handed proning as they process incoming syllables.