I did some digging into the HTML, and here's what I found:
The "flag or disagree" buttons on the flagged post review page have the class attribute:
class="flag-post-button show-invalid"
while the "flag" links on the posts themselves have the attribute:
class="flag-post-link"
I had an idea, and decided to see what would happen if I used developer tools to change that to:
class="flag-post-link show-invalid"
and what do you know? It works!
The only remaining tricky bit, from a user script viewpoint, is that the expanded posts (including the flag links) are loaded using AJAX, so I'd have to hook into the loading process somehow to add the extra class name. Presumably, this would be somewhat easier for the SE devs, since they actually have direct access to the code without having to hack it.
Ps. I did a bit more testing, and it turns out that this trick seems to work on any flag link, even in the normal question view, and even here on meta where I don't even have 10k yet(!). I just gave this question an "invalid flags" flag to see if it would go through; looks like it did:
My apologies for any potential confusion this may cause to the mod who ends up handling it. ;-)
Update: Here's a working user script to implement this feature, pending a proper fix from the devs. The actual code is pretty simple:
$('.mod-post-header').on(
'mouseover',
'.flag-post-link:not(.show-invalid)',
function () {
$(this).addClass('show-invalid');
}
);
Instead of trying to hook into the AJAX code to attach the extra class name when the questions are expanded, this code simply uses jQuery's delegated even handling to insert it at the last moment when you move your mouse over the link to click it. I think it should work on touchscreens too, but I haven't tested it yet.