If it became an issue that affected profits all the manufacturers would do is put the binary blob in some flash (and use proprietary updates that will probably require windows) or ROM on the hardware itself, lock it up so it can't be changed or updated and the live with any bugs that result. That USED to be the way things were, these hardware blobs were in a bit of rom on the hardware and weren't upgradeable. If you ran into a bug you had to buy new hardware.
These binary blobs are a good step in the evolution of hardware because they allow hardware patching for bugs discovered after release. Most of these binary blobs aren't for hardware like winmodems where the stuff is being run in the CPU, it's truly specific to the hardware and an attempt to make the hardware better by making it possible to fix firmware bugs.
The only possible thing this could ever change is to reverse this trend (towards firmware that's fixable after manufacture) and lock everything up back in ROM's on the hardware. Personally I think this is a terrible idea that's a waste of time at best and a disastrous degrading of capability at the worst. These firmware blobs aren't software, as others have noted a significant number of them aren't even code!
I have to wonder where people get these ideas, although hardware blobs like winmodems where code is being executed by the CPU should be replaced where possible, most of these hardware blobs are insignificant and unimportant in the sense of freedom of code and simply aren't a big deal.