Very interesting problem! I have not looked in detail, but here is what I think is going on:
First, your program is not drawing "a line" or "a curve". It's drawing a separate line segment from previous-x/y to current-x/y each time you move your finger. And there's nothing in the program that says that all these lines are
part of the same "curve".
Second, this is OK for thin lines, but when you have such a thick line, the "line segment" being drawn is actually a short stubby rectangle, and again, each rectangle is a separate object as far as the program is concerned. So there's nothing that tells these rectangles to form a figure that has no gaps.
We could think about how to improve app inventor to fix this -- I'm not sure how. But one issue you can explore is what is the exact relation that the start point x, y and the rectangle? My guess is that it's at the lower left corner of the rectangle.
It might be better to make that start point be at the middle of the short side of the rectangle. You can experiment in app inventor to change your program so that rather than drawing from prev-x/y to current-x/y, it applies a correction to these coordinates to take account of the width and slope of the "line segment" (i.e., the rectangle). Why don't you play with this as a geometry problem an see if that improves the situation?
Once we figure out what an appropriate correction is, we can think about installing that in App Inventor.
== Hal