Regarding the VPC part of the question, yes. The replacement spot instance will get the same VPC/Subnet/AZ and all the relevant settings from the instance it's supposed to replace.
Regarding the AMI/post-instal part of the question, this is already covered by AutoScaling. Remember, it works against AutoScaling groups, where all instances start with the same AMI and runan userdata script at boot. All this is preserved for the spot instances.
Can you get an EC2 instance that is deeply embedded in a VPC that is not reachable from anywhere else but a private network on a different VPC, and still replace that with a spot instance with all the same functionality?
Do you have to create an AMI so that you can relaunch an instance with a newer and less expensive one?
What about post-install configuration management that might need to be done?