Grammar for your native language is often instinctual. You learn it when you are young and are aware of the rules subconsciously, even if you cannot explain them to another person. Foreign languages are different because the rules must be learnt.
I can speak two languages fluently (not counting the two languages I have signed up for via Rocket Languages). I learnt both languages when I was young (i.e. learnt them concurrently). One of the languages (English) was the primary language I spoke at home and in school. I think in English and don't think of rules when I speak it. The second language is slightly harder for me. I can speak it fluently since I grew up speaking it as well (parents made it a point to sometimes speak it at home). However, even though I am fluent at this second language, I still cannot speak it effortlessly. Often I have to think for a second to come up with the right word or to phrase something correctly.
Simply put, our native languages (language we primarily speak as a kid) are the ones we will always be best at. Knowing the rules for this native language is less important because we intuitively understand them. I am trying to learn Spanish as a third language now and sometimes find the rules hard to keep straight. With practice, however, I hope to one day be fluent in Spanish as well.
Unfortunately, I don't know of any good English learning sites. I know Rosetta Stone has a "Learn English" software, but not sure if they have one for Spanish to English. Good luck finding something like Rocket Languages for your friends.