I frequently hear startups say [...] can't find
a single great candidate for an engineering role
no matter how hard they look.
While I agree that offering better compensation is a wise move for individual companies, if the market has 10 job openings and 9 engineers, regardless of how much pay they offer one of the companies won't be able to fill the opening.Offering more money might fix hiring problems for one company, stopping one person complaining, but to stop all people complaining the only solution is to increase the supply or reduce the demand.
(Increasing the supply doesn't have to mean immigration reform - it could mean training or lowering hiring standards or a bunch of other things)