Global Mapper v25.0

Preventing sliver results when intersecting areas

I have two polygon (area) datasets that I downloaded from a government site in SHP format.

One of them is "townships" and the other is "municipalities". In most cases, a municipality contains many townships in their entirety, though in some situations a township may cross a municipality boundary so that a part is one municipality and the other in a different municipality. I need to merge these two datasets so that i have a combined list of townships with all (usually just one) municipality that they are in (partially or not). I am doing this with a spatial intersection and have attached the results of a small test area.

Note that there are 405 results. 378 of them have an enclosed area less than 10 square metres which are false results resulting from imperfect geometry. Areas where the boundary between two municipalities should coincide with the townships don't match perfectly and may be 0.01 metre apart.

Running the intersection to create the test data took a long time. If I were to run the whole thing, it would take days, assuming it didn't crash first.

Does anyone have a recommendation on a process to get the results? I'm thinking that if the SHP file data from the "townships" could be first converted to true topological polygons (with only one line between them), I could possibly overlay the municipalities data and force it to uses lines in the Township dataset if they were within a certain threshold distance. But perhaps that is not something that GM can do?

Is there another way?