Heat the olive oil in a heavy-bottomed medium saucepan over medium-high heat. Add the onion and saute until fragrant and translucent, about 2 minutes. Add the orzo and toast for 2 minutes, stirring occasionally. Add the wine (or stock) and cook until absorbed, about 1 minute.
Gradually add 3 cups chicken stock, stirring frequently. Bring to a simmer, then lower the heat and cover. Cook until the liquid is almost absorbed and the orzo is tender, 8 to 10 minutes. Remove from the heat.
Stir in the peas, parmesan, basil, heavy cream and lemon zest and juice. Season with salt and pepper. Top each serving with more parmesan.