As you suspected, this can be proved from the first three axioms only. I couldn't find a short proof, though – I tried brute force enumeration of the theorems deducible from the three axioms (by taking all pairs of theorems already proved and unifying one with the premise of the other), but didn't find your target in the first $80000$ theorems proved.
I then found some guidance in the article on relevance logic in the Handbook of Philosophical Logic. Relevance logic focuses on the fragment of logic in which, roughly speaking, the premises are relevant to the conclusions. It doesn't include the axiom $p\to(q\to p)$, which allows us to add an irrelevant premise to a theorem already proved without that premise, and is thus strictly weaker than the system you're using, but we can nevertheless make use of the results cited in that article.
I'll first describe the structure of the proof and how I found it, and then give the proof in detail. Here are the names I'll use for the axioms; the first column names the corresponding axioms of combinator logic, for comparison with the discussion in the comments under the question:
$$
\begin{array}{c|l|l}
\mathbf I&\text{self-implication}&p\to p\\
\mathbf K&\text{weakening}& p \to (q \to p) \\
\hline
\mathbf B&\text{prefixing}& (p \to q) \to ((r \to p) \to (r \to q)) \\
\mathbf A&\text{suffixing}& (p \to q) \to ((q \to r) \to (p \to r)) \\
\hline
\mathbf W&\text{contraction}& (p \to (p \to q)) \to (p \to q) \\
\mathbf S&\text{self-distribution}&(p \to (q \to r)) \to ((p \to q) \to (p \to r))\\
\hline
\mathbf C&\text{permutation}&(p\to(q\to r))\to(q\to(p\to r))\\
&\text{assertion}&p\to((p\to q)\to q)
\end{array}
$$
(The names are the ones used in the article, except I use "weakening" instead of "positive paradox", since it's shorter and makes more sense to me.)
Theorem $1$ of the article states that, with modus ponens (and implicitly universal substitution), the axiom sets formed by self-implication and one each from the three pairs prefixing/suffixing, contraction/self-distribution and permutation/assertion lead to the same theory.
What you have is weakening, suffixing and contraction. Self-implication can be deduced from weakening and contraction in a single step (by substituting $p$ for $q$ everywhere). Thus, if we can deduce assertion in your system, the theorem will tell us that we can deduce everything else, including your target, self-distribution. I did find a proof for assertion by brute force search.
The article doesn't give a proof of its Theorem $1$ and only says that it can be proved by consulting a book that isn't available online and doing some "fiddling", so we still have to show how to get from self-implication, suffixing, contraction and assertion to self-distribution.
I found a deduction of self-distribution online that uses prefixing and permutation. It turns out that prefixing is deducible in a single step from suffixing and permutation, so the problem remained only to deduce permutation. Again, I found a proof for this by brute force search.
So here's the entire proof put together, starting with your three axioms and ending with your target. First, a high-level description similar to the actual calls in my Java code:
assertion = t (t (weakening,suffixing),contraction);
permutation = t (suffixing,m (assertion,suffixing));
prefixing = m (suffixing,permutation);
target = t (m (prefixing,prefixing),t (permutation,m (contraction,prefixing)));
Each call to m
is an application of modus ponens, in which the first argument is $A$, the second argument is $A\to B$ and the most general unifier that makes the $A$s coincide is used. Each call to t
is an invocation of transitivity (i.e. deducing $A\to C$ from $A\to B$ and $B\to C$), which can be implemented as
t (A->B,B->C) = m (B->C,m (A->B,suffixing))
using suffixing, or as
t (A->B,B->C) = m (A->B,m (B->C,prefixing))
once prefixing is available.
Here's the proof spelled out in $14$ steps. The first table shows the theorems used to generate the antecedents $A$ and the implications $A\to B$ for modus ponens, as well as the resulting theorems $B$:
$$
\begin{array}{c|c|c|c|c}
&&A&A\to B&B\\\hline
\text{(a)}&\text{weakening}&&&p \to (q \to p)\\
\text{(b)}&\text{suffixing}&&&(p \to q) \to ((q \to r) \to (p \to r))\\
\text{(c)}&\text{contraction}&&&(p \to (p \to q)) \to (p \to q)\\
\hline
\text{(d)}&\text{*}&\text{(a)}&\text{(b)}&((p \to q) \to r) \to (q \to r)\\
\text{(e)}&&\text{(b)}&\text{(d)}&p \to ((p \to q) \to (r \to q))\\
\text{(f)}&\text{*}&\text{(e)}&\text{(b)}&(((p \to q) \to (r \to q)) \to s) \to (p \to s)\\
\text{(g)}&\text{assertion}&\text{(c)}&\text{(f)}&p \to ((p \to q) \to q)\\
\text{(h)}&&\text{(g)}&\text{(b)}&(((p \to q) \to q) \to r) \to (p \to r)\\
\text{(i)}&\text{*}&\text{(b)}&\text{(b)}&(((p \to q) \to (r \to q)) \to s) \to ((r \to p) \to s)\\
\text{(j)}&\text{permutation}&\text{(h)}&\text{(i)}&(p \to (q \to r)) \to (q \to (p \to r))\\
\text{(k)}&\text{prefixing}&\text{(b)}&\text{(j)}&(p \to q) \to ((r \to p) \to (r \to q))\\
\text{(l)}&&\text{(k)}&\text{(k)}&(p \to (q \to r)) \to (p \to ((s \to q) \to (s \to r)))\\
\text{(m)}&&\text{(c)}&\text{(k)}&(p \to (q \to (q \to r))) \to (p \to (q \to r))\\
\text{(n)}&\text{*}&\text{(j)}&\text{(b)}&((p \to (q \to r)) \to s) \to ((q \to (p \to r)) \to s)\\
\text{(o)}&&\text{(m)}&\text{(n)}&(p \to (q \to (p \to r))) \to (q \to (p \to r))\\
\text{(p)}&\text{*}&\text{(l)}&\text{(b)}&((p \to ((q \to r) \to (q \to s))) \to t) \to ((p \to (r \to s)) \to t)\\
\text{(q)}&\text{self-distribution}&\text{(o)}&\text{(p)}&(p \to (q \to r)) \to ((p \to q) \to (p \to r))\\
\end{array}
$$
The asterisks mark intermediate steps in invocations of transitivity. Note that most theorems with more than three variables occur only in such intermediate steps. Substitutions are being performed as late as possible; by performing them as early as possible, the proof could be written using only theorems with at most three variables.
The second table shows the substitutions used; you can also find these automatically by unification. The variables are named such that they appear in alphabetical order in the resulting theorems.
$$
\begin{array}{c|l|l}
&A&A\to B\\\hline
\text{(d)}&
p\mapsto q,q\mapsto p&
p\mapsto q,q\mapsto (p \to q),r\mapsto r\\
\text{(e)}&
p\mapsto r,q\mapsto p,r\mapsto q&
p\mapsto r,q\mapsto p,r\mapsto ((p \to q) \to (r \to q))\\
\text{(f)}&
p\mapsto p,q\mapsto q,r\mapsto r&
p\mapsto p,q\mapsto ((p \to q) \to (r \to q)),r\mapsto s\\
\text{(g)}&
p\mapsto (p \to q),q\mapsto q&
p\mapsto p,q\mapsto q,r\mapsto (p \to q),s\mapsto ((p \to q) \to q)\\
\text{(h)}&
p\mapsto p,q\mapsto q&
p\mapsto p,q\mapsto ((p \to q) \to q),r\mapsto r\\
\text{(i)}&
p\mapsto r,q\mapsto p,r\mapsto q&
p\mapsto (r \to p),q\mapsto ((p \to q) \to (r \to q)),r\mapsto s\\
\text{(j)}&
p\mapsto q,q\mapsto r,r\mapsto (p \to r)&
p\mapsto (q \to r),q\mapsto r,r\mapsto p,s\mapsto (q \to (p \to r))\\
\text{(k)}&
p\mapsto r,q\mapsto p,r\mapsto q&
p\mapsto (r \to p),q\mapsto (p \to q),r\mapsto (r \to q)\\
\text{(l)}&
p\mapsto q,q\mapsto r,r\mapsto s&
p\mapsto (q \to r),q\mapsto ((s \to q) \to (s \to r)),r\mapsto p\\
\text{(m)}&
p\mapsto q,q\mapsto r&
p\mapsto (q \to (q \to r)),q\mapsto (q \to r),r\mapsto p\\
\text{(n)}&
p\mapsto q,q\mapsto p,r\mapsto r&
p\mapsto (q \to (p \to r)),q\mapsto (p \to (q \to r)),r\mapsto s\\
\text{(o)}&
p\mapsto q,q\mapsto p,r\mapsto r&
p\mapsto q,q\mapsto p,r\mapsto (p \to r),s\mapsto (q \to (p \to r))\\
\text{(p)}&
p\mapsto p,q\mapsto r,r\mapsto s,s\mapsto q&
p\mapsto (p \to (r \to s)),q\mapsto (p \to ((q \to r) \to (q \to s))),r\mapsto t\\
\text{(q)}&
p\mapsto p,q\mapsto (p \to q),r\mapsto r&
p\mapsto p,q\mapsto p,r\mapsto q,s\mapsto r,t\mapsto ((p \to q) \to (p \to r))\\
\end{array}
$$