Unfortunately OP, the dislike of American behavior and subsequent dismissal of American 1st world problem whining is quite warranted. You're actually the one making the gross generalizations. Very, very few people make comments like "All Americans are children." But when people see bad behavior from an obvious American, there's nothing wrong with acknowledging it. America has a reputation among the rest of the world as being the rudest country for a reason. Because there are more than enough Americans supporting the stereotype. If you want to be angry with anyone, be angry at our fellow countrymen who only continue their ignorant behavior (though luckily I have the good fortune to have left the country and have the unique perspective that allows me to see that the stereotype is more than warranted).

Your post has some good points in it, but it mostly comes off as apologetic, a bit arrogant, and naive. It's never a good idea to lecture about morality to people. If you feel like trying to teach, do it by example, not by lecture.