Likewise understanding something like は vs が to the level of a fairly advanced non-native speaker is not that difficult. Especially now that there are actual good grammar resources that don't explain things in the bizarre way that the traditional textbooks do. At that point you can _understand_ everything, and explain yourself in a way that you will always be understood.
However once you know all those things there's a whole different category of issues that separate you from native speakers. Case in point: this 331-page book [1], written in Japanese, only about は vs が. Clearly if knowing that が is always the topic etc was enough to pass for a native, this book would not exist.
As I said, this is in no way unique to Japanese. There's a difference between speaking correctly and speaking at a native level. Most are happy with the first, and that's ok - it's mostly an academic exercise once you go beyond that.