MLS is a shit league but that doesn't mean that Americans can't play football at the top level. Landon Donovan is wicked. Did a great job when he was loaned from L.A Galaxy to Everton. He's easily the best player in the entire MLS league and that point isn't even debatable. Then there are American players like Friedel, Howard, Dempsey and Bocanegra who all play in the Premier League (because why would they want to play in the MLS?)
It takes a passion in the country for kids to grow up playing football and wanting to put in the dedication it takes to become a top level professional. That's no different in anything. The US doesn't have that for football yet. But it is improving.
A competent league takes generations to build and while the MLS has had billions thrown at it there is no substitute for time in these type of things. It has to try and avoid becoming a graveyard for top stars who are looking for their last paycheck before their knees finally give out and they have to retire too. Bringing up youth and then holding on to it while Seria A, La Liga and the Prem all window shop will be the next test as well. Nope, not easy but not impossible.