If I understand your problem correctly, it ultimately comes from what "External" really means: not Internal. An interface configured as External gets the topology of all internal interfaces, ORs them together, then NOTs the result.
Based on my experience with it, Check Point built the "Network defined by routes" URPF option for environments in which routing is used exclusively with exact networks, not summaries like 10/8. While yes, this is the correct way to build an environment in an academic sense, you also raise the valid concern that most real environments are not academically correct.
I actually just ran into a problem with some interior firewalls sitting between two of my datacenters and their WAN links to certain other datacenters. Nice, simple firewall topology. One datacenter-facing interface marked as Internal, one WAN-facing interface marked as External. I tried to flip the datacenter-facing interface on one of the firewalls to have topology defined by routes, and OSPF was lost between that firewall and the WAN-facing interface, which I did not change. The two datacenters were from an acquisition and have a WAN link between them set up to work as a redundant path between those two datacenters and these particular WAN links. The firewall I changed learned all the WAN-side routes from both its WAN interface and its datacenter interface, including the local networks for both the datacenter interface and the WAN interface. The datacenter interface picked up the routes from dynamic routing and added them to its antispoofing topology, and since the WAN interface was External, it had a topology of NOT those networks.
Still looking into how the system behaves if both interfaces are set to use topology defined by routes.