It strikes me that there is an assumption I made and that is that the GPS is connected to the FC, not the OSD.
Instead, maybe you have the GPS connected to the OSD. In that case, it could be that you simply don't have any data successfully coming from the FC. You must configure the FC port that the OSD is connected to (MainPort, FlexiPort) for telemetry, and at the same baud rate as the OSD is expecting to read it. Also, a common problem is that for serial links like that, the FC Tx pin must connect to the OSD Rx pin (and Rx to Tx).