Why does my model become partially transparent when using the alpha channel to control transparency?
This is because the alpha channel is not completely opaque on the other parts:



The mix shader uses the top slot where the Factor input is 0, and the bottom slot where the Factor is 1. When the Factor is between 0 and 1, it will mix the two accordingly. See How does fac differ with manual control versus node control?

A quick fix you could do in this case is use a Math node with the operation set to Greater than to make the factor only have an input of 0 or 1, never a value in between: