openmoko shows that it is possible to make an open phone (everything on the CPU is open).
the tricky bit is initial costs, and the volume to keep manufacturing costs down. but the opensource hardware people seem to be getting better at this (look at things like arduino and beagleboard)