Impossible to cheat: Assuming "ongoing storage costs", on every payment cycle, rotate the blocks somewhere else (non-predictably). The hashes are probably stored on blockchain, so the receiver can verify them. So to cheat, you need to produce a collision or miss out on your payment.
Practically that's impossible, since the network would need to swap the whole datastore once every payment cycle.
Say each block is stored on three nodes, then these nodes could each generate a nonce, compute a hash of the stored block (using all nonces as IV) and then vote on whether they still have the original file or not. This is much more feasible, as only nonces and hashes are transferred (a few dozen bytes instead of e.g. 64MB blocks).
In that case they can store nothing and instead cooperate to generate spoofed hashes, so you probably want some auditor nodes.
I am not sure why any of these would strictly need blockchain to solve the problem of safely storing data in a pool of untrusted, unreliable nodes.