Place a large non-stick pan over medium-high heat. Add 1 tsp. olive oil and tilapia fillets to hot pan until seared, 30 seconds. Place pan in oven and roast, 7-8 minutes. Tilapia will finish cooking in a later step. Remove tilapia and accumulated juices to a plate. Wipe pan clean and reserve. While tilapia cooks, prepare ingredients.
Prepare the Ingredients
Zest lemon, halve, and juice. Peel, trim, and cut carrot into ½" slices on an angle. Cut mushrooms into ¼" slices. Halve and peel onion. Cut halves into ¼" slices. Mince garlic. While vegetables roast, combine ¼ the mayonnaise and ½ tsp. lemon juice in a mixing bowl
Roast the Vegetables
Keeping a dry towel wrapped around handle, return pan used to cook tilapia over medium-high heat. Add 2 Tbsp. olive oil, carrot, and mushrooms to hot pan. Stir often until lightly browned, 3-4 minutes. Stir in onion, ½ tsp. salt, and ¼ tsp. pepper, and return pan to oven. Roast until carrot is tender, 15-18 minutes. Remove from oven. Carefully add spinach to pan and let wilt from residual heat.
Make the Fish Cakes
Add tilapia and any accumulated juices, panko, remaining mayonnaise, lemon zest, garlic, 1 Tbsp. lemon juice, 1 Tbsp. olive oil, ½ tsp. salt, and ¼ tsp. pepper to another mixing bowl. Form tilapia mixture into four evenly-sized fish cakes, about 4" in diameter.
Finish the Fish Cakes
Place a medium non-stick pan over medium heat and add 2 tsp. olive oil. Add fish cakes to hot pan. If necessary, cook in batches to avoid crowding pan. Cook until browned and warm throughout, 3-4 minutes per side. Remove cakes from heat and set aside. Repeat with remaining cakes, adding oil as needed. Place two fish cakes on a plate. Serve vegetables and sauce alongside.