If I understand you correctly, I had a similar problem when making a ladder where the enter and exit triggers would fire off every time the player moved over the seam between two ladder-parts. I found this video where he implements a little hack which worked for me. He is also doing a ladder (vine) and counts the number of 'vines' the player has entered and exited, and only execute what should happen if 'vines' are the correct amount. Perhaps it solves your problem.
It starts at 13:45 (timestamps in videos doesn't seem to work)