I was told that the reason for no direct flight was that the runway at GVA is too short, they can't accommodate the size of aircraft you'd need to get to the Far East (although I think there's a direct Beijing flight, but perhaps that's nearer?) It may be nonsense
It's nonsense. GVA can accommodate an A380 (although there are currently no scheduled flights), and you will see the occasional VVIP 747 visit. As you say, China Airlines operates direct to Beijing (A330), the big three Gulf carriers all operate direct (EK with a 777, the other two with A330s).
So the reason must be commercial. EK operates to both ZRH and GVA, so the numbers presumably work for them. But for East Asian carriers, Switzerland seems to have lost appeal - I think both Malaysian and Thai have pulled out of ZRH, and CX went long ago.