There an easy solution within the buffer tool. Just use your left obstacle field value I(LeftO in the image below) as distance field, and choose side type == LEFT.
The problem however is using the left/right terminology. A road direction is determined by the relative location of the end point to its starting point. Namely by the direction the road was digitized. See my example below in which I have digitized from North to South (see arrow for digitization direction):
If you don't know how the data was digitized, you will not be able to predict your results. Thus a pre-processing step would be to flip direction of lines in order that all lines will be directed to the same direction.
Than you can use the tool with full confidence about the expected results.