Agree with westfw - whole thing doesn't make sense. IMO the correct way to deal with misguided requests is to explain why they're a bad idea
Re #2 - More than just the last page will be full of data that isn't part of the current program - if you upload a sketch that fills the flash, then upload a much smaller one, and do so using the bootloader, everything after the end of the last page of the smaller one will be full of garbage (well, parts of the previous sketch - but garbage as far as the CRC check is concerned).
Also - if you're concerned that the flash could somehow corrupt itself, all bets are off, because the code that checks the CRC could be corrupted too!
Checking the CRC of the code has a place when using a custom bootloader where you get the code over some unreliable network (for example over the internet, or some wireless protocol) where the reset into the bootloader is initiated by the sketch (as opposed to the hardware reset line); in these cases, you probably want a failed flash to not jump to the bad application code, and instead wait for new firmware.