Combine 1/2 cup of the flour, salt, and pepper in a shallow bowl. Set aside.
Heat 2 tbsp of the butter and 2 tbsp of the olive oil in an extra-deep skillet or flameproof casserole. Dredge the shanks in the flour mixture, and sauté in the butter and olive oil, turning occasionally, until browned, about 10 to 12 minutes. Remove the shanks, reserving any pan juices.
Add the remaining 2 tbsp olive oil to the skillet. Add the onion, and cook until slightly caramelized; add the garlic and sauté 1 minute longer. Turn the heat to low, pour in the wine and stock, and simmer 2 minutes, scraping up the browned bits. Return the shanks and accumulated juices to the pan.
Stir in the thyme, parsley, tomato paste, and lemon zest. Cover, and simmer for 2 hours, or until the meat begins to fall off the bone. Stir once or twice during this time. If too much liquid evaporates, add another 1/2 to 1 cup of stock or water and continue cooking.
Add the carrots and celery, and cook 15 minutes longer, or until the carrots are just tender. Remove the meat to a warm platter, and tent with foil.
Melt the remaining 2 tbsp butter, and mix in the remaining 2 tbsp of the flour. Slowly add to the sauce, and simmer, stirring often, until the sauce is smooth and slightly thickened.
Preheat oven to 350°F.
Place the crushed walnuts in a shallow pan, and roast for 10 minutes, or until they are fragrant. Combine the nuts with the parsley, garlic, and lemon zest in a small bowl. Mix thoroughly. Set aside.
Place the meat in warmed, deep dishes or shallow bowls, pour the sauce on top, then sprinkle with the gremolata. Serve with crusty bread or on top of polenta.
Source: Hayes, Shannon. "Osso Buco." The Grassfed Gourmet Cookbook: Healthy Cooking and Good Living with Pasture-Raised Foods. New Jersey: Eating Fresh Publications, 2004. 76-77. Print.