Hi Jade
Your understanding of English is fine. It is common for people to doubt their ability to speak or understand English! I once had a client discuss Shakespear, argue philosophy, and describe her previous job of computer programming before telling me her language ability was poor!

Sometimes people make the choice to compare themselves with others instead of themselves, (or modeling others instead of comaparing!) ...so I ask you, Is your English better now than it was 1 year ago? 2 years ago? 5 years ago? My guess is that it is continuously improving, and will continue to do so. So therefore, your ability to learn and apply language is great!

Some things I have suggested to clients is to hire an acting teacher for "accent reduction" lessons. Another is to listen to native speakers as if you were listening to music. That tricks your perception into hearing more subtleties. Also, you can watch movies with the subtitles on, and of course, engage in lots of conversations with native speakers!

Alex' suggestion to use the NBG to pick up skills is a good one. You could also use Magnetism to model someone.

Good luck, Jade, and keep it up!