I have heard English is hard to learn as a second language. I know a woman that teaches English to adults in Brazil and I can confuse her if I try to....not that I do....but the way she says some things is funny....and she has lived in the US too. I would say watch movies if you can...tv shows....even music can help you lean the words. The best thing would be to have someone that speaks it to help you learn all the nuances and slang. Keep in mind that different regions will have their own slang and words that can confuse you unless you are familiar with them.
If you cannot take classes, buy Rosetta Stone to learn. You could watch tv shows in English but that will be slow. But best is to learn from a person who speaks English. Your grammar is already very good... are you sure you need classes?