For the osso buco: Preheat the oven to 375 degrees F. Heat the EVOO in a large Dutch oven over medium-high to high heat. Sprinkle the shanks with salt and pepper and brown all over, turning occasionally, 12 to 15 minutes. Transfer to a large plate.
Stir the garlic, celery, carrots, onions and fennel seeds into the pot, 3 to 4 minutes. Add the rosemary, thyme, tomato paste and bay leaves, sprinkle with salt and pepper and stir 1 minute. Sprinkle the flour over the vegetables and stir 1 minute, then pour in the wine and deglaze the pot, scraping and stirring 1 minute longer. Add the chicken stock and saffron, followed by the tomatoes. Add the orange peel, juice and chile. Scrape down the pot and add the meat back into the pot. Cover and transfer to the oven. Cook, turning the meat once about halfway through, 2 hours.
For the gremolata: When the meat is about ready to come out of the oven, combine the orange zest on aboard with the lemon zest. Finely chop the parsley and combine with zest and the chopped or processed nuts.
For serving: Transfer the shanks to a platter and cut off the kitchen string. Split the crusty bread and warm through in the oven. Fish the bay leaves out of the sauce and place the Dutch oven back on the stove over medium-high heat. Whisk the sauce to combine and thicken, 4 to 5 minutes.
Serve the shanks in shallow bowls topped with the chunky sauce and gremolata. Serve the crusty bread on the side for mopping.