In a large sauté pan over medium heat, melt 1 tablespoon of the butter in a large sauté pan over medium heat. Add the onion and garlic and cook until soft and translucent.
Add the chicken and lightly sear, then melt in the remaining butter. When melted, sprinkle in the flour and stir until the chicken is coated evenly.
Add the chicken stock in a thin stream, whisking constantly. Stir in the milk and let simmer until thickened, about 5 minutes.
Add 3 cups of the shredded mozzarella and the parsley. Stir until the cheese is melted, then season generously with salt and pepper. Remove from the heat and let cool completely.
While the filling is cooling, cook the shells in a large pot of salted water over high heat. Cook to the package instructions for baking (usually 2-3 minutes less than al dente) - they will continue to cook as you bake them. When the shells are cooked, drain them and shock them in cold tap water. Drain well.
Heat the oven to 375°F. Spread out a generous amount of sauce in the bottom of a large baking dish.
Stir the frozen peas into the remaining sauce.
Stuff each shell with a generous amount of filling, placing the stuffed shells in the sauced dish. Top the shells with any remaining sauce and remaining shredded mozzarella and the parmesan.
Bake the dish for 30-45 minutes or until sauce is bubbly and cheese is golden. Remove and let cool slightly before enjoying.