This isn't a problem with line strips. OpenGL is doing exactly what you have asked it to do: draw a bunch of rectangles oriented to match the 'lines' you've provided, each with a particular width which you've also provided.
The problem is that you're imagining that OpenGL is going to magically join up the corners of those rectangles into a single swooping shape. That simply isn't going to happen -- OpenGL has no way to determine where those merged vertices ought to be placed, whether you want them at an averaged position or maintaining a particular orientation or distance apart or what. It just draws a rectangle for each line segment, with those rectangles oriented along the direction of the line. A "line strip" isn't a compound line from OpenGL's point of view; it's just a list of discrete lines which is expressed using less data. Because that's all it can be, because OpenGL can't guess what you want it to do.
If you want to draw a wide smoothly curving shape like this, you need to build the geometry for it yourself, and render it using triangles.