Melt 2 tablespoons butter in a large Dutch oven over medium heat. Add chopped onion; cook, stirring occasionally, until softened, about 3 minutes. Add chopped garlic, 1 teaspoon oregano, ½ teaspoon salt and ¼ teaspoon crushed red pepper; cook, stirring constantly, until fragrant, about 20 seconds. Add ½ cup chopped sun-dried tomatoes; cook, stirring, until slightly darkened, about 2 minutes. Add 1 tablespoon lemon juice; stir until absorbed, about 20 seconds.
Stir in rinsed beans and 4 cups broth. Bring to a lively simmer over medium-high heat. Stir in ½ cup cream and 2 tablespoons cream cheese; cook, stirring, until the cream cheese is melted, 2 to 3 minutes.
Add 5 ounces spinach; cook, stirring occasionally, until wilted, about 2 minutes. Remove from heat. Add 1 cup Parmesan; stir until melted.
Divide the soup among 6 bowls. Top with ¼ cup basil and the remaining ¼ cup Parmesan.
