Heat a large pot of lightly salted water to boiling. Add shells; cook 10 minutes, or as per package directions. Drain and return to pot.
Meanwhile, combine bacon and ground beef in a medium saucepan over medium heat. Cook 5 minutes, stirring occasionally. Stir in pepperoni; cook another 5 minutes. Stir in 2/3 of the chopped scallions. Remove to a paper towel-lined plate with a slotted spoon. Discard drippings from pot.
In same saucepan, melt butter over medium heat. Sprinkle with flour and cook, whisking, 1 minute. Whisk in milk and bring to a simmer, whisking frequently. Simmer 3 minutes, whisking until thickened. Remove from heat and add cheeses. Whisk until smooth. Stir in meat mixture and fold into pasta. Top with remaining scallions and serve.