When I was working on townships in Michigan, I made a translator for ogr2osm that transforms the state township data into OSM style exploded relation areas, with shared border ways. The logic is generalized, splitting areas at points that are part of more than one area, and it could be integrated into the tool instead of being part of the translation file.
It doesn’t complete the process of aligning the source data with existing OSM data, but it gets it a whole lot closer than it is if the areas are translated over as ways.