Heat 2 tablespoons oil in a large, straight-sided skillet over medium-high. Add onion, fennel, and a pinch of salt. Cook, stirring, until vegetables are softened and beginning to brown, 7 to 8 minutes. Stir in garlic and tomato paste; cook 1 minute more. Add 2 cups water and beef, breaking up meat with the back of a spoon. Reduce heat to low and simmer, covered, 15 minutes. Uncover, add tomatoes, and season with salt and pepper. Increase heat to medium high; cook until sauce is thickened, 12 to 15 minutes.
Meanwhile, cook pasta in a large pot of salted boiling water until al dente. Drain, reserving 1 cup water. Return pasta to pot; add sauce, 1/4 cup pasta water, and remaining 2 tablespoons oil. Toss to evenly coat pasta, adding more pasta water as needed. Serve, topped with fennel fronds, cheese, and pepper flakes.