I personally think part of the problem is how elementary education is structured. At least in my state, elementary school teachers are expected to be extreme generalists, and only have to take a math class or two -- and then nothing above simple college algebra (which is fine). But they always complain about how difficult it is, and they don't understand math, often taking the state's required exam multiple times because they can't pass math. Yet these are the people we allow to teach kids math; it's a huge issue when they're being taught math by people who don't understand why it works, only the algorithms they've memorized.
Coincidentally, this is also why the 'new math' was so lambasted -- these teachers (and often, parents) don't understand how numbers work, thus they think it's useless to teach kids to subtract 20 and add 2 instead of subtracting 18. Despite the fact that one is much easier to do mentally, and allows you to get a good sense of how subtraction and addition interact.
I'm not a fan of charter schools, but if I had money, I'd start an elementary charter school where the subjects were taught by people who understood that and not generalists. And students would get like multiple hours of recess a day, especially those first few years. Just pure, unstructured play time. But that's a rant for another day.