The GPL doesn't force people to upstream their changes, although it often has that affect. The GPL only forces you to give source
downstream. If your customers never share the source with anyone else (and your upstream is not one of your customers) then your upstream will never get the changes. A good example of this is the game TOME. It has downloadable content that is licensed under the GPL. You get the source code when you buy the DLC. I've never seen anyone distribute it, though (and it's highly frowned upon in the community). The author has a weird idea of the GPL, though, so I don't think he really understands that anyone is allowed to distribute that code.
But in practice people usually freely distribute GPL code, so it's impossible to stop your upstream from eventually getting it.