Linear filtering means that, for the border pixels, it's probably taking a sample from just outside the edge of the texture. I think when you create your texture, you need to "continue" the border into the "empty" areas of the texture. Or else, when you're drawing your texture, push your texture coordinates just inside the valid part of the texture (of course, then when you draw at smaller sizes, the artifact may creep in again).
(why are you using a 311x100 solid white texture? A 1x1 white texture would serve just as well).