The discipline of science is exactly how you get knowledge in a society that doesn't value its pursuit. It's an imperfect process of imperfect individuals that usually nevertheless arrives at knowledge eventually.
Fraud is just another part of this process. Additional checks for fraud or errors cost time and money. Effective checks would basically mean science costs 2x as much. How much fraud can we tolerate? Is it worth spending this much to reduce the amount of fraud compared to investing in more research? Can we slightly change incentives (as opposed to inventing some utopia that cannot be implemented) and thereby reduce fraud more cheaply? The academic discipline has been changing ever since and will continue to change and progress.