A good internist should at least be able to refer you to the appropriate specialist, if not diagnose your problem first off. You've seen numerous doctors who've all given you random guesses, but no one's apparently taken much interest in the thing, which is odd. If it were a muscle spasm it would be unlikely to last three years. Same thing with soft tissue inflammation. It could, conceivably, be an arthritis cyst, but it should show up on CT or MRI. An abcess of some sort is also possible, but these usually won't remain stable for anywhere near three years either. More likely it's a calcium deposit or something that doesn't belong there. Have you had any imgaing done on this area at all? An MRI? Any sort of look or even palpation by a doctor to hopefully get an idea of what it is? Also, does it respond to over-the-counter pain medications such as ibuprofin? This would suggest it to be inflammatory in origin. That would be a help diagnostically.
Any good doctor in any specialty should be able to at least hazard a guess and point you in the right direction. I'd probably start with an orthopedist,since it most sounds like an orthopedic (skeletal or muscular) problem. It's impossible to make a more educated guess at a distance. Feeling the lump should at least yield some clue. I'm surprised no one has tried any harder to diagnose and treat it.
Best of luck to you. Please follow up here as needed.
John Kenyon, EMT, CCT
Non-invasive cardiology tech, Emergency and Critical Care technician, Critical Incident Stress Mgmt. specialist