Preheat oven to 450F. Toss broccoli with 2 tablespoons oil, ¼ teaspoon salt, and ⅛ teaspoon black or crushed red pepper. Roast on baking sheet for 20 minutes.
Add a hefty pinch of salt to a large pot of water. Heat on stovetop over high heat, covered, until it comes to a rolling boil. Add pasta. Stir. Boil for 5 minutes before draining and rinsing with cold water. Set aside.
Meanwhile, peel and devein shrimp. Toss with ½ teaspoon garlic powder, ¼ teaspoon salt, ⅛ teaspoon black pepper.
Heat large skillet over medium heat. Add 2 tablespoons butter and 2 tablespoons oil. When the pan is sizzling hot, place shrimp in pan. Cook shrimp 2 minutes, flip over, cook 2 more minutes. Remove shrimp to dish and set aside.
Add 2 more tablespoons butter to pan along with garlic and onion. Cover, and cook over low heat for about 3 minutes, or until onions clear.
Remove cover. Add heavy cream and bring to simmer over medium heat. Whisk in cream cheese, then add remaining ½ cup heavy cream. Bring back to simmer and slowly whisk in grated parmesan. Whisk until cheese melts completely (about 2 minutes).
Turn off heat. Whisk in lemon juice. Toss pasta into sauce.
Divide pasta between 4 dishes. Top with broccoli, shrimp, and wedge of lemon. Lemon should be squeezed over pasta right before eating.