How to control 220 volts without using relays?
A triac or alternistor is the normal way to control relatively high current AC (other than relays). Alternistors are similar to triacs, but behave better with inductive loads where regular triacs can fail to commutate (turn off). For example, the BTA12: 



The triac can be used to switch windings (discrete speeds) or for phase control. 
Here is a Freescale app note showing a ceiling fan speed control design using phase control. 



The transformer and opto-isolator shown are for safety reasons and could be omitted in a carefully designed and manufactured commercial product (to save money).