That's not why checkpointing exists (or at least not the only reason it persists).
The latest checkpoint is for block 279000. This is the 6th of January.
A reversal back to the 6th of January would be pretty devastating anyway.
Checkpoints give other advantages.
First, you don't need to verify the signatures for any transactions before the checkpoint. This makes initial downloads faster.
Second, once you have downloaded the main chain, you can ignore any forks that happen before the last checkpoint. This protects against an attack where an attacker sends you lots of low difficulty blocks.
If the node sent 1MB blocks from 1 to 1000, you node would have to store and forward them. There would be no way to tell that they aren't from the main chain. All nodes on the network would have to store them, just in case. Generating these blocks would be easy, since they could be difficulty 1 headers.
With checkpoints, nodes can just ignore them and definitely not forward them.
The signature speed benefit doesn't require the checkpoint to be a hard checkpoint. It could be advisory. A block with a known hash at a particular height has been verified.
If the checkpoint was soft, then nodes could enter safe-mode if the main chain doesn't contain the checkpoint. Miners would still mine the longest chain though, in order to prevent network splits.
The block spam attack is greatly weakened by headers first. You don't actually download the blocks until you have verified the full header chain. This means spamming 1MB blocks doesn't work. If you send 1000 difficulty 1 blocks, then it only costs the receiver 80kB. The receiver wouldn't even need to store them to disk.
Even smaller proofs can be achieved using the "high hash highway" system. This allows a short proof that your chain has a high POW. A new node could just ask all peers to prove that their chain has high POW and then download from the one(s) with the highest proof.