Can you please confirm that you are using 1 FX3 and 1 FPGA at a time and then connecting a different FPGA's to the same FX3 and then checking according to your application, right?
Also, can you please specify what is the interface that you are using to communicate with the FPGA?
Can you please go through the datasheet and programming guides of FPGA to figure out if they have a register which can be programmed with a value uniquely?
This unique value can be used to either compare with a value in the firmware and then send a serial number string accordingly or we can directly read the register and update the serial number string of the FX3 which can be seen in Device instance path in Device Manager.
Please do share the necessary information asked above.