Upsampling question- Aliasing/imaging problem
Yes I would suggest to use resample_poly in scipy. When doing upsampling, you would get artefacts outside 12.8kHz, which you would remove via Low Pass Filtering. This is what is done by scipy.signal.resample_poly. You can enter the upsampling factor value as 36k/25.8k = 1.39534, and downsampling factor = 1.

In the above method while doing low pass filtering, the effect in time domain is to do sinc-interpolation. But in Linear Interpolation, you are not doing interpolation using sinc functions. You are just using neighboring points to compute the interpolated value. This is like moving average filtering, whose effect in frequency domain is sinc. It will not totally filter out all the artefacts outside 12.8kHz. But you still can improve it by taking more number of points for linear interpolation. 

Here is the figure showing remains of original signals copy even after doing linear interpolation beyond 12.8kHz (not an exact mathematically correct shape).