Can kubernetes move pods that begin to have interfering workloads?
No, it does not work this way.
K8s does not track pod's cpu/memory/io once they get scheduled. It's up to you to measure it and make changes to your deployment.
I'm not saying it couldn't be done. All I am saying is that k8s is not doing it out of the box and also I don't know of any third party solutions that do this.
Here is my suggestion what you can do:
Since you know that you dont want flask and spark work together you can use affinity feature. To be more specific: podAntiAffinity
One more thing you could do is to set pod resource limits/request.
In this way you can make sure that a pod uses only the ammount of resources it's allowed to use and as a result it won't stall a node. It's generally considered a good practice to add pod resource constraints.