I'm currently working with an hypothesis: the number of mistakes must be less than the number of well succeeded executions. I have no scientific evidence for that, but the reasoning would be to avoid teaching something wrong to your brain or muscular memory.
This first paragraph doesn't answer your question, but thinking like that, you can imagine that there's a "threshold" where you're improving, and not going back. For example, I usually use 60 to 80%, depending on how hard the piece is, or how much time I want to spend for that. I mean, for the last N executions (usually N is 10 for me), I need to execute properly at least 60% percent of it. If I'm less than 60% right, I decrease the tempo by 5% (it also can change as you wish), if 80% or more of my attempts are correct, I can increase the tempo by 5%.
Notice that we have lots of parameters there, they all can be changed accordingly to your purposes. And unfortunately, you still rely on your ears to choose between a good execution and a bad one. Also this method is pretty simple, and it doesn't include the benefits that some "pushes" beyond your comfort zone may give you.
In the end it's exactly what you're already doing, but now you're measuring and can understand if you're improving or not. Use that feedback to refresh your parameters and manage your own "levelling up" criteria.