Heat 1 tablespoon oil in a large broiler-safe skillet over medium heat. Add onion; cook, stirring occasionally, until brown, 8 to 10 minutes. Reduce heat to medium-low; continue cooking, stirring occasionally, until golden brown and very tender, about 10 minutes more.
Increase heat to medium and add sausage, garlic and pepper. Cook, breaking up the sausage with a wooden spoon, until cooked through, 3 to 5 minutes.
Add water and cook, stirring up any browned bits, until the water has evaporated, about 1 minute.
Add spinach a handful at a time and cook, stirring, until wilted, 3 to 4 minutes.
Position rack in upper third of oven; preheat broiler to high.
Heat the remaining 1 tablespoon oil in a large nonstick skillet over medium-high heat. Add gnocchi and cook, stirring often, until plumped and starting to brown, about 5 minutes.
Stir the gnocchi into the spinach mixture. Top with mozzarella. Broil until the cheese starts to brown, 3 to 5 minutes.
