Allow the salmon to sit at room temperature for 20 minutes. Season to taste with salt, pepper, and garlic powder. Dredge each piece in flour and shake off the excess; set aside.
Add the oil to a large braiser or cast iron skillet set over medium-high heat. Add the salmon (skin side down if skin-on), and cook for 3-4 minutes per side, until it is golden and almost cooked through. Transfer the salmon to a clean plate and set aside.
Reduce heat to medium. Melt the butter in the skillet, then saute the garlic for 30-60 seconds, until fragrant.
Add the tomatoes to the pan and cook for 1 minute. Splash in the wine (or broth) and deglaze the pan with a wooden spoon. Allow the mixture to simmer until the wine is slightly reduced.
Stir in the cream and return the mixture to a simmer for 2-3 minutes, until warm.
Add the spinach to the skillet. Allow it to wilt for 30-60 seconds, then return the salmon to the pan. Simmer for a few minutes until the salmon is warmed through and the sauce thickens.
Serve garnished with the lemon juice, Parmesan, and basil, if desired.