The problem is not that your U shaped objects are being offset. Add a circle and set its vertex count to 20 in the Last Operator Adjust panel. Something around 41.4mm radius will have the circle vertices just touch the edges of the U shapes in the array:
Your problem is that the flat parts of the cylinder aren't the same distance from the center as the corners, as you can see by adjusting the radius of the circle to around 43.4mm:
The easiest solution would probably be to use two Bezier curves adjusted to the proper radii, and have two separate U objects, each with 10 elements in its array, although you could make your approach work as well.