Is the bitcoin blockchain really non-corruptible?
Your attack wouldn't work because nodes take the most-work chain as leading, the number of blocks is irrelevant. Any attacking chain needs to spend at least as much work as was done for the original. This actually used to be a bug in the whitepaper and the initial bitcoin software implementation: it checked for the longest chain instead of most-work. It was fixed very early on.

Checkpoints are centralizing as they give devs power. They're no longer done in Bitcoin.