You are not alone... and I hope to help....
Hitting your phone with your knee... barbaric but works... for a few seconds... DOES NOT FIX THE PROBLEM
Buying a new headphone jack port.. get one on ebay for under 6 bucks. you will have a new headphone jack DOES NOT FIX PROBELM
Tightening screw on back of phone... this will temporarily fix
My theories and ideas... There are not enough screws in the area and not enough pressure to hit the contact points (grounds) that the phone sandwiches between the front and back of the phone.
When driving the slightest vibration, breaks that contact, causing the headphones to have static.
I need to something that would....
1. Can bridge that gap and carry a current...
2. a Buffer that will fill that small gap, and reduce vibration...
The fix Cut a small ribbon of aluminum foil,, fold that ribbon, over and over till you have a tiny square that will fit in the space pictured below. Poke a hole in the tiny square with a sewing needle, and make it wider with a tooth pick.
Now the screw that goes through this hole usually screws though the back of the case... were going to bypass the back of the case and scew this directly into that hole. With the hope of adding more pressure to the area and reduce vibration.
See picture below.