The -i is definitely needed on Windows, I just retested without it and it hangs. With your latest fix, it works again.
I think there's a bug in your patch though; line 211 refers to a nonexistent function org-babel-python-earmufs. I think you mean -with-earmufs?