Preheat oven to 350°F, preferably on convection.
Grease a 13x9x2″ (or equivalent) baking dish with unsalted butter and set aside.
Scatter bread pieces in a single layer on a rimmed baking sheet. Bake, stirring occasionally, until dried out, about 30 minutes on convection or up to 40 minutes in a standard oven. Let cool.
Meanwhile, melt butter in a large skillet over medium-high heat; add onions and celery. Stir often until just beginning to brown, about 10 to 12 minutes. Scrape into a large bowl; let cool.
Add toasted bread pieces, parsley, sage, rosemary, thyme, salt, and pepper to the bowl; toss gently to combine.
Drizzle in 1 ¼ cups chicken stock and fold gently.
Whisk eggs and remaining 1 ¼ cups chicken stock in a measuring cup. Pour over bread mixture; fold gently until thoroughly combined.
Transfer to prepared dish, cover with parchment paper topped with foil.
Bake until an instant-read thermometer inserted into the center of dressing registers 160°, 40 to 50 minutes.
Remove parchment and foil and continue to bake until set and top is golden brown and crisp, 35 to 45 minutes longer.
Do Ahead: Bread can be baked 1 day ahead; store loosely covered at room temperature. Stuffing can be assembled 1 day ahead; cover and chill. Bring to room temperature before baking.
