It is trivial to separate the signals in a noise-free purely mathematical case: unless you have more information to bound it further, such a question boils down to "How many independent equations do you need, and therefore how many independent samples do you need, to solve for $n$ unknowns?" For noise free cases @Cedron has blog articles (https://www.dsprelated.com/blogs-1/nf/Cedron_Dawg.php) on minimum solutions and as @Amro has commented in another post, this article may be of interest: Karhunen, Juha T., and Jyrki Joutsensalo. "Sinusoidal frequency estimation by signal subspace approximation." IEEE Transactions on signal processing 40.12 (1992): 2961-2972. Specific to most signal processing applications we would be interested in separating the signals in the presence of noise for which approaches that consider noise would have the most practical use. This is applicable to digital filter design where frequency resolution is a driving concern.
As for the effects of padding; padding does nothing to distort the spectrum - When the time duration of the signal is finite, the spectrum is discrete (simplest example of this from the continuous time domain is the Fourier Series Expansion, and we see the same result with the DFT). Zero padding will not change any of the DFT samples which is the given spectrum based on those time domain samples, but will interpolate new samples in between as samples of the DTFT for the same time domain waveform (without adding any new information we didn't already have other than visual appearance). The original samples, which represents ALL our given information, will be unchanged hence there is no "distortion".
Zero padding does not increase frequency resolution, but interpolates more samples on the Discrete Time Fourier Transform (DTFT) which is a continuous function in frequency. To increase frequency resolution (which the DTFT reveals), we must increase the time duration of the actual signal (the number of samples if the sampling rate is not changed), assuming the signal is stationary in which case whatever we have in our short duration capture continues in reality for a longer time duration: capture a longer duration of that signal and you increase the frequency resolution.
These concepts are detailed further at these posts:
Smallest FFT buffer size given zero-padding
Why should I zero-pad a signal before taking the Fourier transform?
upsampling in the frequency domain
What happens when N increases in N-point DFT
Specific Frequency Resolution
Does downsampling increase the resolution of frequencies?
As for the OP's code example the signals are 1 Hz and 5 Hz and 14 dB apart, with a duration of 1 second (assuming a time axis in seconds). The dynamic range is small (14 dB), but large enough to compete with the sidelobes of the Dirichlet Kernel so windowing will be recommended. In this case we want a window that will reduce the sidelobe sufficient to see the signal 14 dB down, but still maintain a tight enough frequency resolution to discern the 1 Hz from the 5 Hz tone.
The OP also chose an integer number of cycles over the captured time duration resulting in no spectral leakage from the tones and as we see in the plot below, the noise floor given by the double-precision float that I used for the computation. But this is not a realistic assumption that we will be able to capture an exact integer number of cycles, so has little practical value.
By zero-padding we can most easily see the effect of the spectral leakage for all cases of non-integer cycles as shown in this plot below and the zoomed in view below that showing the difficulty in making out the presence of the 5 Hz tone by using the FFT in non-integer cases without further windowing (this is not a "distortion" due to the zero-padding but shows us what would occur with or without padding when we consider all possible signals and motivates the reason for windowing):
For example here is the similar plot without zero padding but using worst case frequencies of 1.5 and 5.5 Hz showing the FFT results landing on the peaks of the sidelobes predicted by the zero-padded FFT (in close agreement with the upper plot shifted to the right by 1/2 Hz).
However this is easily solved with judicious windowing such as this case below with a Kaiser window with $\beta = 6$. The zero padding is not needed but gives us confidence as a verification that we could work with any frequencies close to but not exactly 1 Hz and 5 Hz such that there is no longer the integer cycle condition. What is clear is we cannot allow the frequencies to be arbitrarily close and with this approach the only way to allow for further frequency resolution is to increase the total time duration of the signal. (This example had a $T=1$ second duration with a frequency resolution therefore of approximately $1/T = 1$ Hz, widened further due to the windowing. To allow for the resolution to be 10x better we would need to increase the time duration of the signal to 10 seconds.)