The 'winget install --id Microsoft.PowerShell --source winget' does work for PowerShell ISE, but weirdly enough only for the current session. If I exit ISE and reopen it, I get the window handle error again. Re-running the winget command again returns "no available upgrade found", but it does "fix" the issue again ... until next time.
It seems like there should be a way to import/load whichever component winget adds to the ISE session, but I haven't figured out what that is yet. I'd like to put something in my profile.ps1 other than "winget install ... " because I generally don't run ISE admin elevated and the winget command fails in a non-elevated session. Any ideas?