Soak beans in water overnight or, to soak quickly, pour boiling water over them, covering them by an inch or two, and let stand 1 hour.
Rinse beans and place them in a pot, cover with water by about 2 inches then add bay and quartered onion, and bring to boil. Add salt and cook at a low rolling boil until tender, about 35 minutes. Discard onion and bay and purée about 1/3 to 1/2 of the beans in a food processor. Reserve remaining whole beans and any remaining liquid.
In a large soup pot over medium-high heat, heat oil, a turn of the pan. Add bacon and render 2-3 minutes; remove to a plate. Add chopped onion, fennel, carrot, celery, garlic, thyme, rosemary, salt and pepper. Partially cover and cook 10 minutes, stirring occasionally.
Add wine and reduce to 1/4 cup; add stock, cheese rind, beans and the reserved liquid, the bean purée and the reserved bacon. Bring to a simmer, adjust seasonings and cook 30 minutes, adding more water if necessary. Wilt greens into soup before serving.
For the breadcrumbs, coarsely grind the stale bread (if using) into large crumbs in a food processor. Heat olive oil over medium heat then melt butter into oil. Toast crumbs until deeply golden and fragrant, and season with a bit of salt and pepper. Remove pan from heat and toss with herbs and cheese to combine.
Serve soup in shallow bowls topped with breadcrumbs.