You're wanting to limit the number of connection requests. All of my suggestions in this topic have followed your initial proposal of limiting the number of connections, which is exactly what it's doing and is why you're observing the behavior of deleting a connection and adding a new one.
To limit the number of requests is a completely different implementation and requires additional actions. For example you need to know how many requests they've made and to do that you need to update a field that holds the number of requests they've made every time they make one. So you'd create an integer field and on the same trigger as your redirect if they haven't hit their limit you'd want to increment that integer field by 1 so the request count goes up. In this usage you won't be using a query field at all, but basically just 2 integer fields. 1 for the limit and 1 for the number of requests.