Is it possible that electrum android app uses a different architecture to generate a public address now or it had a bug that generated a wrong address for then?
No.
Nothing have changed and your private key should generate the same legacy address.
When you generated the private keys in 2016, did you use any wallet or tool to check if your private key generates the same address as your python code?