To be a successful language learner you have to deal with uncertainty. You have to accept that there will always be words that you do not understand, and words that you pronounce wrong. There will always be times when you do not really get your meaning across as clearly or elegantly as you would like. You may meet someone or phone someone and the communication is more difficult than you would like. There can even be rejection.
Once you accept this as part of the adventure of language learning you are on your way. If you can actually enjoy the experience, the challenge of overcoming these difficulties and seeing them gradually become smaller, then you will enjoy learning. If you enjoy learning you will improve.
Language improvement is so gradual and so uneven that it is easy to get discouraged. Therefore, especially for adult learners, it is important to just enjoy the process. The more you can learn from interesting and meaningful content the more enjoyable the experience can be. The less you are forced to be accurate or correct the better.
So I always say. Do not expect perfection from yourself, but constantly work to improve. And learn to accept uncertainty, it is one of the charms of language learning.