Mostly, I don't think this contract qualifies as an attempt to restrict your rights for that clause. It's an offer to give WP Engine something that they're not required to be given, in exchange for WP Engine not doing something while that contract is in effect. Crucially, they're not giving up their
right to fork, they're just agreeing not to use it so long as the trademark license contract is active. And the term sheet says either party can terminate it for a material breach without any mention of penalties, so I don't think you can argue that they're being locked in to not using their GPL rights for any unreasonable time period -- they can fork whenever they feel like it, they just have to give up the not-GPL-required trademark license when they do.
Separately, the GPL calls out that you're allowed to place a restriction on your distributed code when it comes to trademarks, in that you're not required to license your trademark. I.e. you're allowed to distribute code that's GPL-licensed but that it's impossible for people to legally use as-provided without either forking it or obtaining an extra license from you. v3 is a lot more explicit about this, but it seems implicit in v2 as well.
You could certainly take the position that any sort of trademark license containing usage restrictions at all qualifies as a restriction under the GPL, so your only choices are to completely allow or forbid usage of your trademarks without any conditions. I disagree with that view.