Preheat oven to 350 degrees F and lightly spray a 9x13-inch baking dish with cooking spray. Layer cubed bread into prepared baking dish. Cook sausage in a medium skillet over medium heat until crumbled and browned, 5 to 7 minutes. Drain. Layer sausage over bread cubes. Place eggs, milk, pesto, Italian seasoning, salt, and pepper in a medium mixing bowl. Whisk to combine. Gently mix in cheeses, tomatoes, and green onions until combined. Pour over sausage and bread mixture and gently stir to combine. Bake dish for 45 to 55 minutes, until set. Before serving, top with fresh sliced basil leaves. Cut into squares and serve.