Cook pasta according to package directions in salted water. Drain and set aside.
Meanwhile, in a large skillet, heat butter and olive oil over medium-high heat. Add onion and cook for about 2 minutes. Add Brussels sprouts and toss to combine. Sprinkle with sugar and stir.
Increase the heat to high and allow the Brussels sprouts to sit for a few minutes without stirring until they begin to char in places. Stir and continue to cook this way for 10-15 minutes. If the pan begins to dry out or burn, add a few tablespoons of water at a time to deglaze the skillet and scrape up the brown bits. Continue to cook until the mixture turns a deep, caramelized brown.
Meanwhile, make the pesto: In the bowl of a food processor, pulse together the pistachios, basil, garlic, lemon juice and sea salt until mostly chopped. Drizzle the olive oil through the feed tube while continuing to pulse until the mixture is combined and the pistachios are mostly ground. Add the cheese and pulse a few more times until the mixture is uniform. Set aside.
Toss cooked pasta and the pesto {start with about half of it and decide how much you'd like to add} into the skillet with the Brussels sprouts, stirring gently to combine, careful not to break up the pasta.
Sprinkle with additional cheese and pistachios before serving, if desired.