The biggest reason is that newly barred lawyers are god-awful at doing complicated work. It takes a lot of on the job training to get a lawyer worth anything. So the real market of actual lawyers is pretty restrained by the number of entry level jobs established lawyers hire.
A good 50% of law students are out of law within a couple years, and large number of those never work as a lawyer. It's tough to create your own job because nobody trusts you.
And even if you do work as a lawyer, not all lawyers are fungible. They guy who spends all day at Immigration court can't litigate a contract dispute over a rail line. The guy who writes patents doesn't know how to handle a bankruptcy.
So you can get a guy to do your DUI for 500 bucks, but my firm would charge you 550/hr just to talk to you on the phone.
Another big reason is that law is a very prestige and pedigree heavy industry. Why would a firm hire a Duke grad for 160k, when you can get 4 Brooklyn law school grads for that? Rightly or wrongly, the Brooklyn grads are seen as incapable of doing the job.
Clients then hire the well known firm for their big cases and matters because they have a good reputation.
That is sort of changing. Big companies use smaller firms for smaller matters and cases where spending 700 an hour for legal work doesn't make sense.
Some would argue legal rates aren't even too high. For example, for transaction lawyers, their fees are a fraction of what the investment banker takes on a deal.
But the biggest reason that legal services are expensive is that legal service is man-hour heavy and essentially doesn't scale.
Look at even blue collar services that are manhour heavy like mechanics. A car mechanic costs 80-100 bucks an hour.
What is really need is for the legal system to streamline. As long as it takes 20 hours to do your divorce, it'll never be cheap.