I can deal with bad geometry by using the Geoprocessing Editing tools. For example I can deal with overshoots and undershoots with the Snap tool. A snap tolerance can be set (ex. 3 feet) and any lines within the tolerance of an intersecting line can be snapped. My CAD to GIS conversion script makes use of the snap tools to ensure that all centerlines snap. Download and check out how they are used.
If you have Data Reviewer the "Find Dangles" tool is one of my favorite tools and used it extensively while cleaning up 360,000 road line segments for the city of Baghdad. http://desktop.arcgis.com/en/arcmap/latest/extensions/data-reviewer/finding-dangles-on-line-features.htm
Retrieving data ...