I had to deal with the same problem when I made a road kit for use in the BGE.
As it is, you’ll almost always get a gap or overlap when using arrays on curves. The bends in the curve make calculating exact distances along the curve impossible without a lot of extra work that wouldn’t really help you in your situation anyway.
The only solution I know of is to make the curved sections of road so they fit exact measurements that can be lined up perfectly with other road pieces. You can also make a variety of smaller curved sections that can be joined into larger shapes, so that one long section might be composed of 3 or 4 shorter sections.
If you’re going to do it this way, you need to first decide on a measuement scheme, then design and place your roads and intersections within that scheme so they automatiucally line up.
If you’re trying to fit your roads to a predetermined layout (i.e. from a city road map you got somewhere), then you’ll have to resort to far more manual placements than otherwise, simply because the road map layout probably won’t be based on any sort of measurement scheme and roads can be almost anywhere.