Best method to learn active vocabulary and synonyms (?)

Hi,
I am not a native speaker of English and I try to increase my vocabulary.
I use mnemonics for it and it has been fairly successful.
However, that’s mostly for passive vocabulary.
(i.e. I understand the meaning of the word when I hear or read it).

However, when it comes to active vocabulary, I haven’t been come up with a good method.
I have two questions about it.

(1)
Let’s say “scuffle” was my new word. I could use some exaggerated image(s) and memorize the meaning, which is “a short fight that involves only a few people and that is not very violent or serious”
It is not that difficult once you get the hang of some memorizing techniques.

But, the difficulty comes when I have to remember the word in real life situation, for example when I see exactly the situation described above and want to say “There was a scuffle at the bar” or something.

What is the best method/way for this?

(2)
Also, with the above example of “scuffle,” there are similar words such as altercation, brawl etc. They are basically the synonyms for “fight”,however the meaning is slightly different in the each word. So even if I was able to come up with the word “scuffle” in the above example in (1), “brawl” might be more accurate for the situation. But how could I remember the most accurate word at once?

I thought the possible solution for (1) is memorizing synonyms for the general word (“fight” in this example). Once I learned the each word well, I could memorize the synonyms and I could run through them. However, it would take time to get to the word if I used Loci or linking - it could work for writing but not in verbal conversation. What is the best (or a good) way?

So, overall, my question is what is the best memory system/technique to come up with the best word or expression at the moment. I believe you have experienced a situation where you say something like “He was very - what’s the word for that? Stubborn…no, not really that, yes, tenacious!”

I want to get rid of a “what’s the word for that?” situation as much as possible!

Any suggestion, ideas, or advice are all appreciated!