> You have a choice of only two parties to represent a population of 310M people of diverse backgrounds.
That's simply not true, and a drastic oversimplification of American politics.
It is true that there are two mainstream America political parties. However, anyone is free to run as an Independent or under the banner of any other party they choose, whether that be the Green Party or the Libertarian Party. Here is an example ballot, showing that more than just Mitt Romney and Barack Obama were on the 2012 federal election ballot: http://www.sos.ms.gov/links/elections/home/tab1/GE12%20Sampl...
As you can see, the Constitution Party, Libertarian Party, Green Party, and Reform Party also appeared on the ballot.
It is true that voters seldom vote for people outside the Republican or Democratic parties. (Two notable recent exceptions are Bernie Sanders, formerly Democratic Socialist who switched to Democrat, and Joe Lieberman, Independent) Why is this? Because for the most part, people are happiest with one of those two. How's that possible? Because there's an enormous amount of political range within a party. Basically anyone can up and announce that they're a Republican at any time, and that's that. Ron Paul and John Kasich can be in the same party and nobody blinks an eye. That's why you hear expressions like 'Tea Party Republicans' or 'Blue Dog Democrats' or 'Southern Democrats'. There's a lot more variety in the party than you see in European parties and party members are free to do basically whatever they want while in office. They don't have to vote in blocs.
At the same time, Americans vote for damn near every position imaginable. Federal government is largely divorced from most people's everyday concerns; you get a vote for President/Vice-President, two Senators, and a Representative. The policies that affect the average American most are legislated and executed on a local and state level, not a federal level. States have enormous power in America politics. And take my state, for example: I get to vote for Governor, Attorney General, Lieutenant Governor, State Auditor, Secretary of State, State Treasurer, Agriculture Commissioner, State Senator, Insurance Commissioner, Public Service Commissioner, Transportation Commissioner, Supreme Court Justice, District Attorney, and House Representative. On the county level, which is also where an incredible amount of decisions are made, I elect a Supervisor, Constable, Sheriff, Justice Court Judge, Tax Collector, Tax Assessor, Chancery Clerk, Circuit Clerk, School Board Member, Superintendent of Education Coroner, and Prosecuting Attorney. And the more local you get, the less party matters at all.
There isn't a democracy problem in America: most of the most important decisions - education funding, infrastructure development, criminal laws and prosecutions, law enforcement, taxation, utility management, etc - are made on a state level or a hyperlocal city or county level. The reality is that the federal government has comparatively little to do with most people's lives, beyond getting a federal income tax return, the military, Social Security, and Medicare.
The problem is with the people.