The reason its expensive to lay fiber now is because there is relatively little demand for contractors who can lay fiber, if there was more demand, there would be more contractors to meet demand and the price of laying new fiber would fall. It all about economies of scale.
If we got rid of the red tape and made it easier for new ISP's to start up it is certain that the price of laying fiber would fall, not only that but some ISP's would start investing in making wireless ISP technology more efficient and cheaper so you'd have an abundance of ISP's to choose from who are all competing to bring you the best efficiency for price through many different methods.
Subsidizing ISPS is what got us into the situation we are in today in the first place, government favoritism is what created the ISP oligopoly. Plus subsidizing the tech won't make it cheaper, it will only encourage companies to price gouge because they know the government has to pay for it.
We should just tear down the red tape, cut subsidies, bust up the companies and created a more positive and free economic situation that will allow the internet to flourish.