An easy workaround is to also dump an auxillary list that stores the order of the keys. Then when reading that data back in, create a tied hash and load it with the key-value pairs in the specified order.
If the keys are in a sorted order (as above) you could use
use the "Sortkeys" filter of Data::Dumper.