It’s easy to take a statistical summary of two groups, and discover that attribute X has some distribution for one group, and another for the other. But figuring out why requires much more effort.
In order to say something is genetic, you need to rule out confounding factors that apply. For example, twin studies attempt to reduce the effects of upbringing (cultural influences, home stability, access to education and other opportunity). This is effective in things like trying to determine whether there may be a genetic component to homosexuality - for example, there’s a statistically significant likelihood (that doesn’t exist for non-twin siblings) that if one twin is gay, the other one is.
However, you can’t aggregate twin studies of one group (“white people”) and another group (“black people”), since you’re not getting around the underlying confounding factors. So, while such twin studies do find that genetics play a role in academic performance (since if one twin does well, the other is statistically significantly more likely to do well too), it isn’t helpful as a mechanism here.
Anyway, jumping to genetics for things that have clearly more local causes is at best lazy. I don’t doubt there’s some genetic factors out there, but we don’t have an easy way to untangle them from other factors.
But we do have several different studies that show a connection between family income and academic performance (even at the same school), parental education levels and academic performance (ie, generational effects), class sizes (in early education) and academic performance, teacher quality, school funding, and so forth.