Arduino crystal freq. Why 16Mhz instead of 20Mhz?

They don't - the original Arduino was based on the ATmega8, which has a max frequency of 16MHz.

Sorry about that mistake. You are right. ATmega8 is 16Mhz maximum.

So, there is no reason other than compatibility with ATmega8. Wouldn't be better to run Arduino at 20Mhz. 20% increase in speed. Wouldn't be any issues with Software Serial or anything else with this increase in speed?