Cook pasta according to package directions until al dente, drain in a colander, and set aside.
Preheat the broiler to high and position an oven rack so the skillet will be a few inches from the heat source.
In a very large oven-safe skillet over medium-high heat, melt the butter.
Add the flour and whisk constantly until the roux turns light brown and has bubbled for about 2 minutes to remove the raw flour taste.
Slowly pour in the milk while whisking continuously, smoothing any lumps until the mixture is smooth.
Whisk in the taco seasoning and black pepper until fully incorporated.
Add 3 cups (about 12 ounces) of the grated cheddar and whisk until melted and the sauce is smooth.
Stir in the cooked pasta, drained black beans, and sliced green onions until everything is evenly coated with the cheese sauce.
Sprinkle the remaining 1 cup of cheddar evenly over the top and place the skillet under the broiler for 1 to 2 minutes, watching closely, until the top is melted and bubbling and lightly browned to your liking.
Remove from the oven, sprinkle with the diced tomato, the reserved 2 tablespoons green onions, and minced cilantro, then serve immediately.