Like to also share what my friend wrote...
If a non-native speaker of Japanese speaks Japanese at the average speed of a native Japanese speaker and use expressions 言い回し that a native Japanese uses for that particular context and situation, then he/she is a fluent Japanese speaker.
Another point is, I believe that once a learner REALISES that he/she has used the wrong expression while speaking, he/she can self-correct himself/herself. Native Japanese speakers also sometimes search for the right word to use when speaking. You will know this when they say 「えーと、なんだっけ。。。」 or 「何て言うか」smile
Allow me to relate an anecdote:
In 2003 when I was studying Japanese full-time in Tokyo, I met a fellow Singaporean lady who was then studying for her Japanese Linguistics undergraduate degree as a PSC scholar at University of Tokyo 東京大学. Before that, she had studied Japanese as a third language from Sec 1 till JC 2. When we became friends, I asked her how long she took before she felt that she could speak fluent Japanese after she came to Japan. She thought for a while and replied 3 years (if I remembered correctly).
Thinking back on her reply now, I've come to the following conclusion:
When a person speaks his/her first language or second language that is almost equal to his/her first language, he/she literally speaks what is on his/her mind i.e. thoughts are directly expressed in the language itself. These thoughts are NOT translated into Japanese first and then spoken. If a learner has reached this stage, then he/she has become fluent.
A essential element of attaining fluency in Japanese (or any other language) is one's sensitivity to language. For example, when a person feels that a word/an expression sounds "weird", and can provide the correct word/expression, then he/she possesses the sensitivity. Although this sensitivity is more or less inborn, a person can "train" this sensitivity by reading/listening to a LOT of Japanese, consciously THINK about what he/she has read, and CHECK the dictionary if he/she doesn't understand a word/express.