They are left empty for future expansion.
There probably won't be any future expansion now: we have Unicode for new characters, and encoding mapping information is something that is now widely deployed on a network basis, instead of being considered local to a single machine, so making changes to those mappings would hurt everyone.
But in the past there have been additions. Most notably the Euro sign: if MS had allocated all the bytes from day one then it would have been impossible to add this symbol, so all legacy Windows applications would have been unable to display currency properly. cp1252 also gained some characters from Central European languages later in its lifespan.