This is an interesting one. The speedo is a solid state instrument that measures the number of induction pulses from the speed sensor / rotor. IE It either works or it doesn't work. Not sure how it would work but give an incorrect reading.
If it's measuring exactly 1/2 as you say, I'd be curious to pull the front sprocket cover and take a look at the speed sensor rotor. This is just a wild guess but maybe the previous owner ground-off 2 out of 4 of the 'teeth' on the rotor to reduce the miles being recorded on the odometer?
That would explain how it's working but reading 50% of the pulses that should be coming from the speed sensor / rotor at any given speed.
I acknowledge that this is a longshot but it's all I can think of.
this isn't from a gsx-r but it's what I could find with a quick image search. This sits over the front sprocket. See the four 'teeth'? If you ground-off two of them, that would result in what you're reporting.
It would be an easy mod for a sleezebag long distance rider who wants to dishonestly retain more resale value.