Make the roux. Melt butter in a saucepan over medium heat. Whisk in flour and cook 1 minute, whisking constantly.
Add liquids. Slowly whisk in beer, then whisk in milk. Keep whisking until smooth.
Season. Add Dijon, garlic powder, paprika, cayenne, and salt. Simmer gently 2 to 3 minutes until slightly thickened (do not boil).
Melt the cheese. Turn off heat. Add cheddar and Monterey Jack in handfuls, whisking until melted and smooth. Stir in cream cheese or Worcestershire if using.
Serve. Serve warm with pretzels, chips, or veggies. Rewarm gently if needed.