Walmart is merely a symptom of a larger problem. I think some of the problems with traffic and the "big box" aspects can be solved with zoning and more regulations. If Walmart is forced to invest more in a building they will not be as likely to up and move and this will solve some of the aesthetic and traffic problems, of course, costs will go up. Also, rising oil prices might cause Walmart to make some changes.
The two problems that are more difficult to solve are low wages and cheap imports, which are big factors in the lower prices.
Walmart, enabled by technological advances, has been able to remove much of the skill from retail jobs. This enables them to hire and fire people very easily, because the jobs are easy to learn. This also prevents unionization, which would increase labor costs. Also, they can manage payroll much more easily, because it is easier to hire the marginal worker that is not skilled.
Now, many of the products Walmart sells are manufactured in China, this is because labor costs are cheaper in China. I buy food, toiletries, hardware, and cheap clothes at Walmart. So the Hanes' sweatpants and socks I buy are manufactured overseas, and then shipped to the USA. These things probably used to be made in the Carolinas, but they are pretty simple to manufacture. The textile workforce had to be more skilled than the people at the retail level, and this probably enabled them to unionize, and the wages at the mills were probably pretty good, but the products can be made much more cheaply overseas.
My solution to the problem would be to strengthen the social safety net, i.e., measures such as a universal health care program, job training, etc. We should not be in the job protection business, because we should want to maximize productivity. We should, however, be in the worker protection business, and this would make workers less fearful of losing their job and more likely to do the necessary work to get a better job, this will also give them more leverage to get a better wage, because they will not be so dependent on their employer. Also, universal health care will make our manufacturers that compete against Germany and Japan more competitive, because in those nations the governments (through higher taxes) pick up the health care tab, not the manufacturers.