Don't be discouraged, it's hard to achieve fluency in any language like native speakers! The most important thing is to not give up and don't compare yourself to others -- especially native speakers! It's absolutely possible to improve your language abilities and become fluent. As long as you can accurately express yourself and have solid grammar and vocabulary, you're on the right track!
Read a lot, listen/ watch tv even more and speak at any chance you get and try writing regularly. English is virtually possible to learn online, just stick with it.
English is also a very diverse language and many native speakers aren't familiar with global English. For example, a fluent American speaker can go to England and misunderstand conversations or have differences in grammar and writing style that are otherwise correct.