Place the stock (or water) in a medium-sized pot and bring to a boil, then keep warm over low heat while beginning the risotto.
In a large deep skillet over low heat, melt 1 tablespoon of butter. Add the onion and garlic, cover, and cook for 8 minutes, stirring once or twice in between. Increase the heat to medium.
Add the rice, stirring constantly, until the rice feels VERY hot to the touch, about 1 minute. This is called toasting the rice and it’s important for the perfect texture, forming a crust around the grains and allowing them to absorb moisture without bursting or getting soggy.
Stir in the wine and cook until the rice absorbs 75% of the liquid.
Add 1 cup of the stock, stir and let cook until the rice looks like it’s “dancing” (a term my culinary school instructor always used that resonated with me – shout out to Chef Guido), about 8 minutes. The liquid will not be completely absorbed, but will have a thin layer of liquid on top. Add ½ cup of the stock at a time, each time stirring and cooking until the rice looks like it’s dancing. Repeat three more times and turn off the heat. Again, there should be a tiny bit of liquid left at the top of the rice.
Add the last 3 tablespoons of butter and the parmesan. Cover the pan and let sit for 2 minutes. Add the lemon zest and heavy cream and stir to combine. Taste and season with more salt and freshly ground black pepper.
Spread the risotto onto a sheet pan. Let sit at room temperature for 30 minutes, then cover with plastic wrap, making sure the plastic is directly touching the risotto, and refrigerate for at least one hour or up to 2 days (if choosing to double or triple the recipe, cool for at least 2 hours).
Take a cookie scoop that is about 2 inches in diameter and scoop the risotto into balls. Place them on a parchment-lined sheet pan.
Take each ball in the palm of your hand and make an indent with your thumb in the center of the ball. Stick one cube of mozzarella inside and seal the risotto around it, rolling it into a sphere. Place them back on the parchment-lined sheet pan and freeze until frozen solid.
Pulse the breadcrumbs in a food processor until you have a finer crumb consistency then transfer to a medium-sized bowl. Place the flour into a second bowl, and then whisk together the eggs and milk in a third bowl. Mix 1/3 teaspoon of salt and 1/3 teaspoon of garlic powder into each bowl.
Take the frozen balls of risotto and toss each first in the flour, second in the egg mixture, and third in the breadcrumbs, making sure to coat the balls evenly with each mixture. Place back on the parchment-lines sheet pan and freeze again.
Fill a medium-sized pot halfway to the top with frying oil and set over medium heat. Test the heat of the oil by sprinkling in a pinch of leftover breadcrumbs. If it sizzles, it’s hot and ready to go!
Fry the balls in batches, making sure not to overcrowd them in the oil, until they are golden brown. Place on a plate lined with paper towels to drain any leftover oil. Serve warm with the sauce on the side.