I'm sure they benefit from public research, lost of industries do, but even public Universities are perfectly capable of patenting their discoveries and getting paid by companies using them. Ours here in the UK certainly do this.
Patents are an attempt to protect risk. If you're getting my money to invest without any risk to yourself, you don't deserve a patent.
Here's an easy solution:
Patent and copyright times are limited proportionally by the percentage of government money invested and at the end of that time, the research must be made publicly available.