Brown bratwurst over medium heat in a little oil. Add onion and beer. Simmer uncovered, for 20 to 30 minutes. Stir together butter and onion salt; spread on buns.
Make a lengthwise cut in each bratwurst to within 1/2-inch from end. Spoon on drained onion; sprinkle with cheese. Place on foil "boat" leaving sides open.
Broil 4 inches from heat for 2 minutes. Top with crumbled bacon. (Can be done ahead except for final heating, which can be done on outside grill; put bratwurst on a baking sheet and cover grill a few minutes. Watch so they do not burn on the bottom).