Mix the dry ingredients: In a large shallow bowl, combine the all-purpose flour, cornstarch, paprika, garlic powder, onion powder, salt, black pepper, and cayenne pepper and whisk together until evenly distributed.
Combine wet ingredients: In another shallow bowl, beat the eggs and then whisk in the buttermilk until fully combined.
Coat the chicken: Working with one piece at a time, dip each chicken piece into the buttermilk mixture, ensuring it's fully coated, then dredge it in the flour mixture, pressing gently so the coating adheres to all surfaces.
Rest before frying: Place coated chicken pieces on a plate and let them rest for about 10 minutes, allowing the coating to set for maximum crispiness.
Heat the oil: Pour oil into a large, heavy-bottomed skillet or Dutch oven to a depth of about 2 inches and heat to 350°F, using a thermometer for accuracy.
Fry in batches: Carefully place chicken pieces into the hot oil in a single layer, working in batches to avoid overcrowding, and fry for 12-15 minutes until the coating turns deep golden brown.
Drain and cool: Using tongs or a slotted spoon, transfer the fried chicken to a paper towel-lined plate and let it rest for 3-5 minutes before serving.
Arrange the chicken: Place the crispy fried chicken pieces on a serving plate or platter.
Add fresh salad: Arrange green lettuce leaves, cucumber slices, cherry tomatoes, and onion slices alongside the chicken for a fresh, balanced meal.
Garnish and serve: Add any optional seasonings or condiments you prefer, and serve immediately while the chicken is still warm and crispy.