It sounds like someone let this car run down quite a bit before you purchased it. These cars are very durable and long lived, however, like any piece of machinery, they have to be maintained as you go along.
As far as your suspension, I'm wondering if this car saw lots and lots of rough roads. My 300E, same chassis, different drivetrain, has almost as many miles and the suspension is as tight as a banjo string. A competent tech should be able to put the car in the air with the wheels off the ground and pry, tug and shake until they find the offending part. I would keep trying to find someone who is capable of doing this.
As for your $650 quote for struts, are you talking about front shocks? If so, these can be had for $150 or $200 and take no more than an hour or two to replace. If you are talking about front shocks, which could by the way be rattling, and they are quoting $650, it's time for you to find a reputable shop. I think the 124 has heavy lower control arms rather than the strut rod like is on the 123 cars. Don't pay $650 for two front shocks.
There are many good, honest, reputable independent Benz techs out there. There are also some that do the more basic work like brakes and shocks that rip people off every hour of every day. I like to think that there are more of the former than the latter.
Best of luck,
'84 Euro 240D, 523K miles
'88 300E 5 Speed
'81 300D Daughter's Car
Over 800,000 miles in