Cook bacon in cold skillet over medium heat for 8 to 12 minutes, flipping every 2 to 3 minutes until crispy. Transfer to paper towels. Save 1 to 2 tablespoons bacon grease if using for burgers.
Make burger sauce: Whisk together mayo, ketchup, mustard, relish, Worcestershire, garlic powder, smoked paprika, and hot sauce until smooth. Refrigerate while cooking.
Make caramelized onions: Slice 2 large onions into thin half-moons. Heat 2 tablespoons butter and 1 tablespoon olive oil in skillet over medium heat. Add onions and pinch of salt. Cook, stirring occasionally, for 20 to 25 minutes until golden brown and sweet. Reduce heat to medium-low if browning too quickly. Set aside.
Form burger balls: Divide ground beef into 4 equal portions (6 ounces each). Gently roll into loose balls. Don't pack tightly. Mix seasonings (salt, pepper, garlic powder, onion powder, paprika) in small bowl. Set aside for seasoning after smashing.
Smash and cook burgers: Heat griddle or cast iron skillet to high (400-450°F). Add bacon grease or oil. Place one beef ball on hot surface. Immediately smash flat with heavy spatula using full body weight until ⅓ to ½ inch thick. Season top generously. Cook 2 minutes without moving until dark crust forms.
Flip burger once. Add 1 to 2 slices cheese on top. Cook 1 more minute until cheese melts and burger reaches 160°F. Remove and repeat with remaining balls. Rest burgers 2 to 3 minutes.
Toast bread: Mix melted butter with garlic powder and parsley. Brush both sides of Texas Toast slices. Toast on medium heat for 2 to 3 minutes per side until golden brown and crispy. Sprinkle Parmesan on one side before toasting if using.
Assemble: Spread burger sauce on 4 toast slices. Add generous portion of caramelized onions. Add lettuce if using. Top with smashed burger, 2 bacon slices, pickles, and desired toppings. Drizzle extra sauce. Top with remaining toast slices. Press gently and serve immediately.