Your main goal is to create a single feature between intersections. Here's how to create single feature road features:
intersect on your road segments with output type set to
Add XY fields to your intersect points.
Dissolve points by
POINT_Y fields. Use
OBJECTID as a stats field, with stats type
Select your stats field
COUNT_OBJECTID < 3 to select non-intersection vertices. Start and editing session and delete these points, or use the
Delete Features tool.
Dissolve your road segments into a single feature.
Split Lines at Points. You'll have single segments between intersections.
Now you just need to use a
Spatial Join with your input feature class being your new lines and your join feature class being your crash points. You'll get a
Join_Count field added which shows how many crashes were joined to each segment.