Preheat the oven to 220C/200C Fan/Gas 7. Butter a shallow 1.75 litre/3 pint ovenproof dish.
Cook the penne with the onion in boiling, salted water according to the packet instructions. Drain, refresh in cold water and leave to drain again in the colander.
Put the chicken strips in a resealable freezer bag with the paprika and a little salt and pepper, seal the bag and shake to coat.
Heat 1 tablespoon of the oil in a large frying pan and quickly fry the chicken over a high heat for about 2 minutes until golden-brown and just cooked through (you may need to do this in batches). Using a slotted spoon, transfer the fried chicken to a plate and set aside.
To make the sauce, melt the butter in a large saucepan, add the flour and whisk together to form a roux. Cook for 1 minute, then gradually add the hot milk, whisking over a high heat until the sauce is smooth and thickened, and allow to boil for 4 minutes. Stir in the mustard and half the cheese and season with salt and pepper.
Add the pasta and onion to the sauce in the pan and stir together. Spoon half this mixture into the dish, arrange the chicken strips over the top and spoon the remaining pasta and sauce on top of the chicken. Scatter over the tomatoes and then top with the remaining cheese. Bake in the oven for about 20 minutes until piping hot and golden-brown on top.