You could try restoring your phone as "new" to eliminate any software glitches from causing your problem. If that doesn't work, it's most likely a hardware problem. Since you're out of warranty, there are many third party repair shops that can fix this for you. Use google to find them.
If you restore first, do the following: Connect your phone and select "backup". After the backup is complete, right click the phone in the device pane & select restore as new. Disconnect your phone & see if the camera works. If it does, reconnect your phone, right click & select restore from backup(select the backup we made when we started) & you should be good to go. If your camera doesn't work after restoring as new, most likely you have a hardware problem. Your choice, get it fixed, buy a new phone & sell yours(there's a demand for these phones, even with harware problems), or just live with it the way it is.