Though both expressions are used even in the US, other English speaking parts of the world use Happy Christmas such as England (they use either) and India (I know English is not a native language in India but English is spoken commonly). However, I think there are a few possible explanations as to why we tend to use "merry" more commonly in American English.
First is that "Merry Christmas" stems from England however the word merry (from middle English merrie) was slightly more subdued in meaning, like pleasant, not "really joyous." At some point in England "happy" may have been substituted to give it a bit more emphasis. After all, both words now have synonymous meanings (happy and merry).
Another thought would be that the first Christmas cards were printed in about 1850 or 1860 (can't recall the guys name that first printed Christmas cards). Before that they were all hand made. Anyway, his cards read, "Merry Christmas" on the front and that may have lead to it being the more popular expression.
Finally, English avoids too much repetition and since we often say Merry Christmas along with Happy New Year, it's less redundant sounding if we use a synonym for "happy" with the word Christmas.
These are just my own musings.