Bring a large saucepan of water to a boil over high heat. Add spaghetti; cook according to package directions, stirring occasionally, about 7 minutes. Remove from heat; stir in spinach until wilted. Reserve 1/4 cup of the cooking water; drain the mixture well.
Meanwhile, heat oil in a large skillet over medium heat. Add onion; cook, stirring occasionally, until softened, about 3 minutes. Add garlic and crushed red pepper; cook, stirring often, until fragrant, about 1 minute.
Add wine, broth, salt and lemon juice; bring to a simmer over medium heat. Cook, stirring occasionally, until reduced by about half and slightly thickened, about 5 minutes. Add sour cream; cook, stirring constantly, until melted, about 30 seconds. Stir in Parmesan and the reserved cooking water until the cheese is melted and combined, about 30 seconds. Add the pasta mixture; toss to coat.
Remove from heat; add parsley, butter and lemon zest. Stir until the butter is completely melted, about 30 seconds. Divide among 4 bowls. Garnish with additional parsley and crushed red pepper, if desired.