There is no way to remove the invoke-sqlcmd timeout even though the implied value for this is a timeout of zero (0).
This was previously posted by someone else here: https://connect.microsoft.com/PowerShell/feedback/details/523996/invoke-sqlcmd-querytimeout
I am able to reproduce their findings and I've run into this with a production system.
For now I've set the value to the max 65535. The queries I'm running are only hitting about 2 minutes, but I were running larger or more complex queries, this would be a serious issue.