Preheat oven to 200degC. Line a large roasting tray or dish with baking paper for easy clean up.
Leaving the skins on, cut banana shallots in half lengthways, slice 1cm off the top of the garlic bulbs, and quarter red onions.
Wash and pat chicken dry, stuff with lemon halves and place on prepared roasting tray. Arrange shallots, garlic and onions (cut-side-up) around the chicken. Drizzle chicken, shallots, garlic and onions with olive oil and season with salt and pepper. Roast for 40-45 minutes until chicken is just cooked through and alliums are soft and caramelised.
Remove chicken from roasting tray and pour any juices from the cooked chicken and roasting tray into a pot. Cover chicken with tinfoil and a tea towel and leave to rest for 10-15 minutes while you make the gravy.
Add chicken stock and jam to the pot with the roasted chicken juices. Bring to the boil and simmer for 3-4 minutes. Stir in cornflour mixture and continue simmering, stirring frequently, for 2-3 minutes until thickened to a gravy. Season to taste with salt and pepper.
Carve roast chicken and serve with roasted caramelised alliums, gravy and broccoli.