Texture slowly loses transparency every time it's copied

I’m just learning OpenGL. Thanks for any help.

I coded a very simple program to demonstrate this issue.

I create an array of two FBO/Textures. The first texture I set with a PNG that has some transparency in it: a hole with smooth edges. When I draw the first texture to the second FBO/Texture using a basic shader, and then render it to the screen, some of the transparent pixels have disappeared. The same thing happens when I render it from the second texture back to the first FBO/Texture: more of the pixels that had an alpha between 0.0 and 1.0 have drifted toward 0.0. After doing this in a loop for about five times or so all of the smooth edges in the texture transparency have disappeared. All the alpha values are either 0.0 or 1.0. Attached is a photo showing the start, middle and end of this.

I would expect the texture’s pixel data to remain exactly the same between copies.