In 12-inch skillet, cook bacon over medium heat 6 to 7 minutes or until crisp; drain on paper towels. Crumble bacon; set aside. Reserve 2 tablespoons drippings in skillet. Cook onion in bacon drippings over medium-high heat 6 minutes or until almost tender.
In 6-quart Dutch oven, mix onion, broth and potatoes. Heat to boiling; reduce heat. Cook 10 minutes or until potatoes are very tender.
Meanwhile, in same skillet, melt butter over low heat. Stir in flour with whisk until smooth. Cook and stir 1 minute. Gradually stir in 2 cups of the milk. Pour milk mixture into potato mixture. Add remaining 2 cups milk, the salt and pepper. Cook over medium heat, stirring constantly with whisk, until mixture is thickened and bubbly.
Stir in ham, half of the bacon, the sour cream, 2 cups of the cheese and 1/2 cup of the green onions. Cook until thoroughly heated and cheese is melted. Evenly top individual servings with remaining bacon, 1/2 cup cheese and 1/4 cup green onions