You can install assemblies to the GAC with a PowerShell script from PowerShell GAC, so your install.ps1 script can definitely do this.
However a word of caution is warranted; doing this is probably not going to give most people the behavior they want. Each project is going to use a strong name reference to a specific version. Just because one project updates the package doesn't mean the other projects will update their packages, nor will they use the newer version in the GAC - they'll use the one they are strongly bound to unless the assembly contains a binding policy specifying the new version replaces the old one, in which case the version the project uses won't match the version nuget believes is installed!
Thus it can become very difficult to reason about exactly which version of the assembly is being used. Normally, you can just look at the nuget installed packages and immediately know what you've got.
In my case, we are using nuget to keep binaries outside of Git, but some of the binaries involve the WinForms designer which gets very, very angry if the assemblies are not in the GAC. We had endless issues over and over until we just bit the bullet and put the assemblies in the GAC. Now it works flawlessly. So we are registering our private custom assemblies in the GAC via nuget so it will automatically download and register them, but we have one solution and guarantee that all projects upgrade at the same time.