Why we doesn't use Clock Crystals like 18,432?

But, for general purposes with communication overhead, 18,432 should work.

I don't quite understand. For "general purposes", 16MHz works fine too. The error in the BRG at 16MHz is less than 1% for all "popular" speeds up through 38400bps, and 3.7% for 115200 and 7.8% at 230400bps. A 1% error in the bit rate does NOT translate to a 1% error rate in actual transmissions; in general, the clocks between transmitter and receiver can be off by a total of about 12% before you are sure to get errors. Usually half of that is allocated to receiver and half to transmitter, so you really want to keep error rates on each side below 5%, but the bit rate errors caused by the 16MHz clock of an Arduino should not be causing any real problems.
(also, note that at higher speeds, you need to start worrying significantly about factors OTHER than bitrate mismatch causing errors. RS232 was never designed to go so fast, and TTL-level serial is even more suspect...)