Your examples are still using subcontractors, which is what I'm saying is the problem. Someone is diffusing responsibility and adding a layer of complexity just so they can reduce their risk and skim a little off the top.
Most of this would go away if the guy who gives me the estimate and takes my money is the same guy who comes back to do the work later. Or if the guy delivering the pizza works for the company that sells me the pizza.
This is the way it was through the 1990s, but now everything is corporatized and sub-contracted out.