If anyone's still interested, I recently wrote a Pokemon R/B save editor and in doing so discovered that there is in fact a checksum for part of the save file.
Here's a little tool that will fix the checksum for Pokemon R/B save files: http://suiken.square7.ch/pkmnHashfixer.zip
And here the algorithm in c#: http://pastie.org/2042674