Make a test case.
Write the code so that no matter what happens, the recognizerDidFinishWithResults method always starts the recognizer again. Then test how that works.
If the test works, and the recognizer is always correctly restarted, then you can make a slightly different test, such as one that only tests the length of the utterance and simply logs either "long" or "short".
If the test fails, then it's reasonable to conclude that you can't restart a recognizer. At least not from a recognizerDidFinishWithResults method. You can then work on coming up with an alternative approach, which you should then test in the same way. That is, test it by making it start a recognizer after every utterance.
FWIW, the above is just a simple use of making test cases and finding out how they work. Making test cases is a fundamental skill for discovering how things really work. And discovering how things really work is the essence of debugging.
Test cases almost always start with the simplest thing that can give useful results. Since your basic question hinged on whether a recognizer can be restarted or not in a recognizerDidFinishWithResults method, that's what it should test and no more. It should definitively answer exactly one question, and provide a consistent answer every time the test case is invoked.
If the test case produces different answers, then there is some external variable not being accounted for. You need to do account for it and put it into the question the test case is intended to answer. In other words, the question isn't specific enough about an answer, or isn't specific enough about the preconditions.
Once you have a consistent answer for that one question, you can proceed to write test cases that answer other questions that may come up.
The key to writing test cases is to have a clear statement of what the test case will test (the specific question), and have it do no more than that. If you don't know exactly what you're testing for, or you can't write it in a way that gives a definitive answer every time, then you need to correct those things.