Unfortunately, the thread affinity api on m1 doesn't work that way, at least based on what I've been able to understand by reading here:
https://developer.apple.com/forums/thread/703361
and more specifically this linked source file:
https://github.com/apple-oss-distributions/xnu/blob/bb611c8f...
I agree with your other points though!