This is almost certainly a hardware problem with the Hookswitch. After deploying Cisco IP Phones for the last few years we (and many others) have found this to be the most common hardware problem. There is a "Best Practice" for cleaning the Hookswitch contacts (link below) that does work (rarely) . Usually the phone has to be replaced/RMA'd.
If you don't have smartnet on the phone and you want to buy the parts to fix this, here's the link