Something that jumps out at me is that the keypad is plugged into a switch port programmed as an access port.
If I read you right, the PC is plugged into the keypad.
Did you set the PC IP address staticly?
My concern is (or my out loud thought processing) is that the keypad is getting VLAN info and not passing the data through to the PC?
A way to test this is to put a small data switch between the keypad and the data switch, staticly set the PC with an IP address on the voice VLAN and plug it into the new dataswitch. If I'm correct, this will now work. A simpler way, if your not counting on LLDP, is to change the switch port to a trunk port.
Ralph