Bring a large pot of salted water to a boil. Cook the pasta according to the package directions until just tender.
Drain the pasta and rinse it under cold running water until completely cool. Allow it to drain thoroughly before transferring it to a large salad bowl.
While the pasta is cooking, place the bacon strips in a frying pan over medium heat. Cook until browned and crisp, stirring occasionally.
Transfer the cooked bacon to a plate lined with paper towel and allow it to cool.
To make the dressing, add the mayonnaise, pickle relish, minced onion, ketchup, mustard, vinegar, sugar, paprika, salt, garlic powder and onion powder to a small bowl. Whisk until smooth and evenly combined.
Add the chopped red onion or shallot, hard-boiled eggs, cucumber, tomatoes and cooled bacon to the pasta.
Pour the dressing over the salad and gently fold everything together until the pasta and vegetables are evenly coated. Avoid stirring too vigorously so that the eggs and tomatoes keep some of their shape.
Cover the salad and refrigerate it for at least 30 minutes before serving.
Stir gently before serving. If the pasta has absorbed too much of the dressing, add a small spoonful of mayonnaise or any dressing that you reserved.