Preheat the oven to 350°F. Place a baking rack on a large baking sheet tray and very lightly spray the rack with cooking spray; set aside.
Heat 2-3 cups peanut oil in a large heavy-duty skillet (at least 3 to 4 inches deep) over medium-high heat until it reaches 350°F. While the oil heats, prepare the steaks for breading.
Set up a breading station by whisking 1/4 cup milk and 4 large eggs together in one dish.
In a second dish, combine 1 1/2 cups all-purpose flour, 1 tablespoons season salt, 1 teaspoon garlic powder, 1 teaspoon onion powder, and 1 teaspoon black pepper; stir to combine.
Dip each cubed steak piece first into the flour mixture to lightly coat both sides, then into the egg mixture on both sides, and finally back into the flour mixture so each piece begins and ends with flour. Place breaded pieces on a large plate or rimmed baking tray and repeat until all pieces are breaded.
Very carefully place 2 to 3 breaded pieces (depending on skillet size) into the hot oil and cook about 1 ½ minutes on each side, or until a light golden brown. The steaks will finish cooking in the oven and may darken slightly while baking.
Remove the golden brown pieces from the oil, allow excess oil to drip off, and transfer the pieces to the prepared baking rack on the sheet tray.
Repeat frying and transferring in batches until all pieces are fried.
Place the sheet tray with the fried cubed steak into the oven and bake for 20 minutes to finish cooking.
While the steaks bake, make the gravy: in a medium saucepan melt 4 tablespoons unsalted butter, whisk in 1/4 cup all-purpose flour and cook on medium for 2 to 3 minutes until the mixture is a pale gold. Slowly pour in 4 cups whole milk while whisking constantly to avoid lumps.
Add 1 teaspoon kosher salt and 1/2 teaspoon black pepper to the gravy and continue to cook, whisking frequently, until it thickens, about 5 minutes. Once thickened, turn off the heat.
Plate each chicken fried steak piece and top with the prepared gravy.