If you are given more than one 2,016-chains of the same height, both apparently valid, you don't need to keep all the blockchain headers in order to check which one is valid and which one has been forged parallel to the valid blockchain, you just choose the one that has the highest bits value.
What do you think?
The one with the most work could easily be fake.
If the honest 90% takes 2 weeks to generate 2016 blocks, then a dishonest 10% can generate 2016 blocks ending 18 weeks into the future.