Bring a large pot of water to a boil and add 1 tablespoon of salt. Add the spaghetti and cook until slightly softer than al dente (short of fully firm). Drain and set aside.
While the pasta cooks, heat the olive oil in a large skillet or pot over medium heat.
Add the cubed salami and cook, stirring, until the salami browns.
Reduce heat to medium-low and add the diced onion, bell pepper, olives, crushed garlic, and capers (if using). Cook, stirring, until the onion is translucent, about 1–2 minutes.
Stir in the diced tomatoes and oregano, cover, and simmer until the tomatoes are softened, about 3–5 minutes.
Add the tomato sauce and vinegar (omit vinegar if using milk). Stir to combine and heat through.
If using evaporated milk, stir it in now, then add the drained spaghetti and toss gently to coat. Do not let the mixture boil after adding milk to avoid curdling.
Season with the remaining salt (to taste) and black pepper. Mix well and adjust seasoning as needed.
Serve hot and garnish with grated Parmesan cheese, if desired.