I used the same approach: turn knob, save, see what the bytes look like.
For one of the Reason instruments that I was thinking of decoding, I encountered a similar problem. Even saving the same patch with different filenames resulted in different looking bytes.
This is outside my own scope but try graphing these patch files out, color coding and seeing what patterns you can notice.
I can't make sense of the data in existing individual patches or banks (I did some single value changes and resaved and the file was completely different), so it's probably above my pay grade, but if anyone has some ideas they would be appreciated.
(I'm a simple amateur python programmer, for the record)