Nate already knows about this and agrees that the upper layer should overwrite the lower layer. This is already how it works except for image swaps/attachment keys.
What you described is how it worked before and it was replaced for performance reasons.
But we figured out a compromise between performance and the old behavior so you can get reliable overriding without it being incredibly slow/wasteful. It's only a matter of implementing the code now, but I can't speak for Nate when the official fix will come.
I would make a hotfix for this myself right now but I'm currently in the process of moving and I don't have access to my main machine to work.