Preheat oven to 350°F.
Season fish with salt, pepper, granulated onion, paprika, minced parsley, thyme and lemon zest. Wrap each piece in 2 slices of ham that are slightly overlapping to cover fish.
Heat 1/4 cup olive oil, 4 turns of the pan, in a cast-iron or other skillet over medium to medium-high heat. Season potatoes with salt and pepper, and lightly brown for 10 minutes, turning occasionally. Add onions, celery, pepper and garlic, and cook to soften, 10 minutes more. Add tomato paste, stir, then add stock to loosen pan bits. Toss with a handful of parsley.
Meanwhile, heat remaining tablespoon of oil in a medium, nonstick skillet over medium-high heat. Add fish and crisp the ham, 2 minutes on each side, then transfer to oven and cook through, 8-10 more. Douse with lemon juice and serve with hash alongside.