As a test, what I would suggest is statically assigning a port to be in the voice VLAN on the switch, and then try putting a laptop first with a static IP on it (in the correct subnet obviously), then as a second test, try letting the laptop get a DHCP address. See if you lose connectivity to the laptop in the same way as you do to the phone in each case, and then it will possibly point you in the right direction.
Ron