Are any designs based solely on data from trial and error used in critical mainstream engineering?
Usually not. And the reason is that trial and error is expensive and time consuming. As engineers, we are always working on projects with a budget and a deadline. Take your rocket example. Rockets are expensive. For sake of argument, let's just say it's $1 million per rocket test. You can't afford to build rocket after rocket after rocket solely by trial and error. You'll go through your budget very quickly.
Does every engineering design needs to have a complete theoretical backing?
Again, usually not. And the reason is that developing complete theoretical understanding is also expensive. You could hire army of PhD researchers to come up with an incredibly detailed model and buy giant supercomputers to simulate it. But an engineer with a PhD will cost $100k/year just in salary. If your model is so detailed that you need a team of 20 researchers working for years to come up with the model, it would be cheaper to just run a test.
So there is a balance. You try to come up with a model that is sophisticated enough that it explains the majority of the behavior, but simple enough that you don't break the bank coming up with it. Your model won't be perfect, so you run a few experiments to fill in the holes in the theory, but not so many that you kill the budget. The key decision is deciding the tradeoff between model and experiments.
In fact, if I had to describe what engineers do in exactly one word, that word is "tradeoffs". In every engineering decision, there is always a balance between multiple competing objectives, and the engineers job is to make the best tradeoff.