Par-cook the potatoes: Place the cubed potatoes in a pot of cold salted water. Bring to a boil and cook 5 minutes until just barely tender. Drain well and let steam dry 2 minutes — dry potatoes crisp better.
Crisp the potatoes: Heat 1 tablespoon olive oil and the butter in a large cast iron skillet over medium-high heat. Add the potatoes in a single layer, season with 1/2 teaspoon salt, and cook undisturbed 3-4 minutes until golden on one side. Stir and continue cooking 6-8 minutes, stirring occasionally, until crispy all over. Transfer to a plate.
Sauté the veggies: Add the remaining 1 tablespoon olive oil to the skillet. Add the bell peppers, onion, and zucchini with the remaining 1/2 teaspoon salt. Cook 5-6 minutes until softened and lightly charred at the edges.
Season: Stir in the garlic, smoked paprika, cumin, and black pepper; cook 1 minute until fragrant. Add the spinach and stir until just wilted.
Combine: Return the crispy potatoes to the skillet and toss everything together. Taste and adjust salt and pepper.
Add the eggs: Make 4-6 wells in the hash with the back of a spoon. Crack an egg into each well. Cover the skillet and cook 3-5 minutes over medium-low heat until the whites are set but the yolks are still runny (longer for firmer yolks).
Serve: Sprinkle with chives, add hot sauce if you like, and serve straight from the skillet while hot.