Downsampling an Oversampled packet
Based on your information a packet length is about 77.2 millisecond. With 3918 bps, each packet contains about 302 bits. Frequency is shifting about every 0.255 millisecond. you get about 256 samples per bit, so 128 point FFT seems to be correct. I assume you have a real signal, so you need to evaluate only 64 bins. If you are synchronized properly, each two consecutive FFTs will provide you with one frequency, switching at the other. If you are not synchronized with the start of the first bit, only every other bin will provide you with a nice single frequency (assuming that you do not have noise and spurious signals)