BJJJ is more effective than Karate for self-defense because its techniques are more practical. Although Karate is a good martial art, the modern practice tends to be too focused on point fighting and light touch.
Jiu-jitsu doesn't require you to be a certain age. No one can stop you as long as you are passionate and dedicated. You can do it no matter what age you are, so it doesn't really matter if you are young or old.
The answer is simple in terms of effectiveness. Muay Thai stands out as the most effective standing striking martial art while Brazilian Jiu Jitu is the best grappling martial arts. The Muay Thai fighter is not afraid of the ground game.