In T177122, a short term fix was made for specific instance of PageImage incorrectly returning non-free images. There appears to be some agreement that the fix was inadequate in the broader view. It appears that PageImage filters based on the file page having a particular <span> value applied to the file page. I would describe this method as unreliable, invisible, redundant, and apparently undocumented (at least undocumented on EnWiki).
Can PageImages replace (or supplement) non-free filtering with a check for [[Category:All non-free media]]? This is how the community tracks non-free files. I believe the category would be a far more reliable mechanism. It is also the obvious means the community would use when attempting clean up incorrect usage of a non-free file.