The author describes how they had to drive 50 miles every day, use the corporate laptop (or install shady software on their own one), not get a response for many days. Basically, their rate (and the total cost) covers not just the work they do, but all the frustration that comes with the work.
Now, if you treat your staff better than that — remove all the hurdles, answer their emails promptly etc. — then there will be many talented people who'd prefer it over a meaningless-but-highly-paid alternative.
Non-profits get free labor and the devs get real world experience.
I guess you are frustrated because your company doesn't make much money on technology. If the company has a positive ROI on tech, then you wouldn't be frustrated, because more you invest, more you get out. Most companies doesn't need made-to-measure technology solutions.
There's no easy solution, in market terms at least. Maybe you get lucky and catch someone who doesn't need the money and thinks your cause is good enough to put effort towards, but that's not reliable. I wish I had a better answer. Upskilling someone else is potentially viable, depending on what exactly you need. The problem is that things such as static sites and basic sysadmin stuff that are (relatively) easy to skill up in, are also quite cheap in the marketplace for that exact reason. So I'm guessing that's not exactly what you're talking about.
There's quite a bit of effort these days towards upskilling people into more web app developer roles. Lots of bootcamp graduates and a few self taughts floating around. And in my last hiring exercise I found there's quite a large pool (in my area, ymmv) of devs looking for their first real FE/BE job. There's probably some real good value there but the trick is in sifting through the mud. The quality varies wildly, and some of it is shocking. You could get lucky though. I think the go is university graduates, but I hear a lot about grads in the US going straight into high-ish paying jobs so that may be area-specific advice. I was on $45k my first job out, which I thought was fair at the time. But now that I understand the market better and can see just how sub-par a lot of the work out there is, it's obvious that that was a bargain.
The other problem with that is that you're at a big disadvantage when building a team from scratch. A lot of the new devs coming in that will accept lower wages will turn out to be great coders and deliver great value, but a much smaller subset is going to be able to do that on their own with no guidance. That's part of the reason I suggest looking for graduates. I know it's an unpopular opinion here but I think a strong theoretical understanding of software development will help a self-starter more than the equivalent practical knowledge, since without a lot of mentorship they're going to get much more of the practical side from working for you. My first job was straight in the deep end, full responsibility for everything and very little help (one back-end dev who was in the same position with only a tiny bit more experience). I'm super greatful for it, and I think it made me a far better dev than I would have been if I went with a different (bigger) company. Maybe that could be a selling point?
tl;dr if you can't compete with the market then you need an edge that gives you more value than you'd otherwise get. That means people that aren't in it for the money (needle in a haystack, as I'm sure you know, given your position), and people that will rapidly (and successfully) upskill above what the market expects.