Why are there three kanji words?
At the time when there was no writing in Japanese, there was no such distinction. I'm guessing that the Chinese had separate words for the different concepts. And when Chinese characters were brought into Japan, multiple Chinese characters that had approximately the same meaning corresponded to a word that the Japanese already had. Then these Chinese characters were assigned to the Japanese concept.
What are their differences?
捜す. Both are
さがす and mean "to search".
捜す nuance is "to search for something lost".
In the similar vein of kanji sharing readings and similar meanings, I'm guessing 虚, 空 and 洞 take on the nuances of "hollow", "cavity" and "hole".
I'm of the opinion that they are different. (If my shirt had a tear, I would say it had a 穴 or 洞 rather than a 空. A hole in my shirt makes more sense than a cavity in my shirt. The boundary of "cavity" has an added dimension to that of "hole")
Consider the following:
(To analyse the sense of the kanji I'm also going to consider other readings for the said kanji along with compound words)
きょえい [虚栄] (n) vanity, vainglory (abstract nothingness, as opposed to something tangible being absent)
うつろなめ [虚ろな目] (n) vacant eyes (abstract nothingness)
きょぎょう [虚業] (n) risky business (Risky; might amount to
きょすう [虚数] (n) complex number, imaginary part, imaginary number (I'm trying to illustrate abstractness)
うそ [嘘] (n) lie, falsehood, incorrect fact, inappropriate (the 口 radical with 虚; to speak (use 口 for 虚) but the result is as good as not speaking i.e. a lie)
If I were to try to squeeze these senses into a concept available in English, it would be "void". This would be most similar to "hollow" as I feel that "hollow" describes abstract qualities better than "cavity" or "hole". (I'm not saying that "cavity" or "hole" cannot be used in an abstract sense though)
For 空: (Ignoring the sense of "air" or "gaseous" as that would result in too much data)
あき, すき [空き, 明き] (n) room, time to spare, emptiness, vacant
あきかん [空き缶] (n) empty can (Intangible, but suggests absence of a
something thereby creating a space)
あきがら [空き殻] (n) empty shell (Intangible, but suggests absence of a
something thereby creating a space)
くうそうてき [空想的] (adj-na) imaginary (Abstract)
くうせつ [空説] (n) groundless rumor or story (Intangible)
くうそう [空想] (n, vs) daydream, fantasy, fancy, vision (Intangible)
Here we see that 空 has the sense of "hollow"(abstract and non-abstract) and "cavity". "cavity" suggests a space bounded by something e.g. a can, a shell or a room. As opposed to "hole" which boundary is different from a cavity. (See previously given example of a hole in a shirt)
I'm very tempted to equate this to the Chinese 洞[dòng] which in Japanese would be 穴[あな], literally meaning "hole". However, reading Japanese dictionary entries suggest that 洞 in Japanese is quite different from its Chinese main meaning:
どうけつ, ほらあな [洞穴] (n) cave, den, grotto
どうけん [洞見] (n, vs) insight, discernment
どうさつ [洞察] (n, vs) discernment, insight
どうさつりょく [洞察力] (n) insight, discernment
どうもん [洞門] (n) cave entrance, tunnel
Now I'm going to bring in a Chinese dictionary definition of 洞:
没有堵塞，可以穿通 (méi yǒu dǔ sè, kě yǐ chuān tōng) Which would mean "Not blocked, can pass through"
This Chinese definition works perfectly for 1. through 5. above. Passing through physically into a cave, and passing through cognitively to attain insight. Still a dimension less than "cavity" though, it only specifies a hole, but beyond that does not specify a "3D" boundary.
Here's some food for thought that compounds the kanjis in question:
くうきょ [空虚] (adj-na, n) emptiness, vacancy. (Seems to be used abstractly)
くうどう [空洞] (n) cave, hollow, cavity
くうどうか [空洞化] (n, vs) making hollow, making meaningless