The fact that storing data on the blockchain is expensive is also not an optimization problem that can be solved easily with incremental optimizations, it stems from the fact that the data is transferred and mirrored forever on thousands of nodes. If storing data on the blockchain was cheap you'd quickly run into scalability problem. People who run Blockchain nodes don't want to mirror Wikipedia, the output of all the world's newspaper and child porn archives on their servers.