Cook the pasta according to package directions. Reserve 1/2 cup cooking liquid, drain the pasta and return it to the pot.
Meanwhile, heat 1 tablespoon oil in a large skillet over medium heat. Add the onion, season with 1/4 teaspoon each salt and pepper and cook, covered, stirring occasionally, until tender, 6 to 8 minutes.
While the onions are cooking, using a vegetable peeler, remove 3 strips of zest from the lemon. Thinly slice the zest; add it to a food processor along with the walnuts and garlic and pulse until finely chopped. Add the Parmesan, 1⁄4 cup peas, remaining 2 tablespoons oil, and 1/2 teaspoon each salt and pepper and purée until smooth.
Add the grape juice to the onions and simmer for 2 minutes. Add the remaining cup peas and cook, tossing, until heated through. Toss the pasta with the walnut pesto (adding some of the reserved cooking liquid if the pasta seems dry). Add the onion mixture and toss to combine. Serve with a squeeze of lemon juice and additional Parmesan, if desired.