The way you've drawn it, your road is a monotone polygon (that is, there's always Y to the left of you, and X to the right of you, when you're facing directly north). Once you've triangulated the polygon there's an algorithm specifically for finding shortest paths in a monotone triangulation, called the "funnel algorithm".
For triangulating the monotone, the description in Mark de Berg's Computational Geometry is great, but failing that, http://www.cs.ucf.edu/courses/cot5520/Triangul_monotone.ppt looks pretty good. For the funnel algorithm, try here.