It may be that while you know the basic structure of the formal English language (and better than some lazy native born students, in my opinion judging from your writing skills) but what might be giving you problems (particularly with jokes) is the many colloquial words and phrases which don’t adhere to literal meanings but rather depend upon cultural references or peculiar quirks in expression.
One of the best resources for these colloquial expressions and cultural references is American TV shows and movies. They are also a good way to expose yourself to how people really speak (as opposed to written language)
There are several writers of both TV and movies who have repeatedly been praised for their keen ear for realistic dialogue. Perhaps focusing on some of their works may be helpful. If you go to the website www.imdb.com you can put the writer’s name into their search bar and it will give you a full list of whichever shows or movies they worked on.
Here are some of the ones who come to my mind quickly for realistic dialogue (and I’m sure others can add ones I’ve overlooked)
David Mamet, Quentin Tarantino, Aaron Sorkin, David Kelly, David Chase (altho he is currently best known for the Sopranos, I would strongly suggest a previous show on which he was a writer. It’s called Northern Exposure. Great show. If you’re a teen, Sopranos is a bit too violent. Plus, you really don’t need to learn the speech patterns of “Joisy and New Yawk gangstas”.).
The other source for how everyday people really talk would be reality TV shows but most of them are of such poor quality I almost hate to suggest it. Some are just absolute dreck. A few of the halfway decent ones would be Survivor, The Amazing Race, Top Chef, True Life(even tho it’s on MTV it is a well done and interesting documentary show covering real peoples lives) These shows have everyday people from all different areas of the US. It would give you a good cross section of American speech patterns.
You could also try finding American movies with written subtitling in your native language. Perhaps this could give you an ear for hearing English speech along with being able to simultaneously read in your native language.
My Mother grew up in Germany and didn’t come here till her twenties. And she eventually spoke English with no accent at all (surprisingly) even tho my Uncle (her older brother) still always had a heavy accent.
An interesting fact she mentioned to me was that she never felt entirely comfortable speaking English until she began to THINK in English rather than German. I found that really fascinating. It makes a lot of sense tho.
Perhaps that may be why you feel that your speaking is slow and awkward. If you are naturally thinking in one language, it takes time for your brain to internally translate it into what comes out of your mouth.
I doubt that you could just force yourself to think in English. I have a hunch it’s probably a gradual process. I don’t know if practicing thinking in English would be a realistic thing to try. It would be pretty hard to try to force yourself I would assume.
But, for what it’s worth, that was how my Mother described her experience.
When I was taking Spanish classes in school, I do know that it was much much easier for me to read it or write it than to speak it. Hardest of all was trying to understand speaking Spanish. Their natural speech pattern was so much faster than my brain could process it. It was just a gigantic torrent of words coming at me with me only recognizing a few words here and there. But the more I head people speaking it, the easier it got.
I guess that is the way it is with new language. Speaking/hearing always being the harder part compared to reading/writing.
That’s why I suggested the movie and TV watching. I’ve heard many immigrant folks say that they learned how to speak English from constant TV. Hope that helps you.