01 - Cook the macaroni in salted boiling water according to package directions. Drain and set aside.
02 - In a saucepan, melt the butter over medium heat. Whisk in the flour and cook for 1 minute.
03 - Gradually whisk in the milk and cook until slightly thickened, about 2-3 minutes. Lower the heat, add cheddar and mozzarella cheeses, salt, pepper, and paprika. Stir until smooth.
04 - Add the drained macaroni and mix to coat well. Transfer the mixture to a baking sheet lined with parchment paper. Spread evenly, cover, and refrigerate until firm, at least 2 hours (or 30 minutes in the freezer).
05 - Scoop out heaping tablespoons of the cold macaroni and cheese and roll into 1.5-inch balls.
06 - In a small bowl, whisk eggs with 2 tbsp milk. Place flour in a second bowl and breadcrumbs in a third.
07 - Dredge each ball in flour, dip in egg mixture, then coat in breadcrumbs. Place on a tray; repeat with all balls.
08 - Heat 2 inches oil in a deep pot to 350°F.
09 - Fry the balls in batches, turning occasionally, until golden brown and crispy, about 2-3 minutes per batch. Drain on paper towels.
10 - Serve hot with warm marinara sauce and a sprinkle of parsley if desired.