Nothing prevents them from creating a too high royalty with any implementation that I’m aware of, when they can mint themselves. An interesting idea would be to create a smartcontract which does the minting of this control token and limits the max royalty setting. And anyone providing a service or software that makes this minting easy with the correct metadata formatting etc, could do the same. Also, secondary markets can impose limitations if they would like to avoid this, but this is a different problem which I don’t see being solved by either the 777 type or this proposed more flexible control token.
As for after the fact, my suggestion is that when checking royalties locked at the SC, the marketplace may find multiple entries for a single policy because the creator may try to change it several times by minting new tokens to do so. The rule of thumb would be “always honor the lowest” so a creator can lower the royalty but not raise it unexpectedly. In general this seems again, like a different type of problem which neither solution really can control/mitigate if a creator just decides to do something like this in either implementation.
The primary purpose of this other “control” token I’m proposing for use, is to allow creators with a way to set royalties over any truly owned (they have the keys over the policytarget), in an agnostic-to-time-or-lock manner, while maintaining on-chain/transparent/and fully verifiable proof of ownership over the given target policy. So this would coexist with your original CIP is what I’m saying, it does not threaten it or undermine it, and perhaps could be an improvement on it! 
One more quick update: I’m going to add to this that the metadata contains the slot height at the time of minting the royalty control token. This helps users and secondary markets in two ways: allows the secondary market to filter by submission time, finding the “oldest” and “newest” if there are more than 2 submitted by a creator for making changes. This allows the user to make changes to their payout address or list of addresses. This could be critically important to teams with multiple recipients and terms that govern their qualification to receive royalties as one example. Secondary markets can also quickly compare any royalty % change attempts based on just 2, the first % they set and the last/latest one, and pick the smaller of the two, making this process more efficent.
So the disadvantages this proposed solution faces are ~equal to the current cip-0027 with the exception of creators modifying rewards in attempts to take all sales, in which case this is already possible in a less flexible way and seems to be something markets can easily mitigate in a competitive way, while we gain the following advantages:
- Royalty can be set over an owned policy id at any time, regardless if the creator forgot/didn’t know/was before cip-0027 and the policy they’d like to set royalties over is now locked. This mechanism being a “control” token is able to aleviate that issue entirely with exactly the same proof of ownership and validation.
- Modifications to payment addresses can be made and immediately “live” on the blockchain for secondary markets to “see” and honor
- Royalties can be lowered. The creator can also attempt to raise them, however the secondary markets who would need to implement the simple code functions to perform this new validation can always only honor the lowest % set.
- This makes use of the Always Fails plutus contract, which personally I think is just fantastic
I hope I’m not stepping on any toes in presenting this idea and if this is the wrong place to discuss I can move the discussion elsewhere. However I really appreciate the challenge of explaining better you’re presenting me with!
Edit addition:
Two quick thoughts on the lines of “what if a creator goes rogue and suddenly ups the %”:
By giving artists the ability to do this, when they may not have known better before and it’s now locked, is of greater weight and value when abuse could easily be mitigated by a marketplace. If, for competitive advantage, a marketplace had a complex/centralized way for an artist to setup royalties over a locked/unroyatied policy, they would do it and they would mitigate the risks of abuse or attempts at taking 100% (rug pull) etc. So why not implement a solution that is decentralized and requires arguably less effort on the part of markets to adopt and mitigate?
Another thought is this: Say a creator sets a reasonable % and then goes rogue. It could be a standard that if you submit another Royalty Control token to the smartcontract, the only section you may modify is the “self” slot height of course (and policy id over the royalty control of course), the “controlslot” since it’s for when this new one was made, and the “addr” and that’s it. If a creator changes the %, the marketplace ignores that entirely. They can see which is the latest vs first by taking the “controlslot” value and comparing them both against each other and against the actual mint tx times of each Royalty Token (so the control slot value cannot be faked).
Again, what is gained in this is inclusion of anyone past, present, future who was ignorant or had someone helping them who didn’t know how or if about setting royalties etc…allows flexibility in their rollout for new projects…and very crucially allows for modification of the payout addresses. All while maintaining decentralized/onchain…and all while utilizing the fails plutus script!! 
Final thoughts/update:
To remain consistent and satisfy the parameters being employed by CIP-0027, it may be a reasonable approach to merge these two into a single implementation. The caveat would be the 777 token, if found with additional metadata particularly the “self” section, would be an indicator that this particular 777 also contains additional metadata possibly pertaining to a different (but provably owned) policy ID.
In this implementation design, the 777 token contains all the same metadata as the CIP-0027 plus additional as outlined in the readme at MintedWithLovelace/dapp-smartcontracts/global-registry at sandbox · MadeWithLovelace/MintedWithLovelace · GitHub
This “merge” of these two approaches also has the side-benefit of providing the policy script data onchain, for sites such as pool.pm to query, making this information decentralizedly transparent and easily available.