The constant is $2$. Let $n=\lfloor d_2/d_1 \rfloor \geq 1$, and let $t_k$ be the time which the long distance runner takes to arrive at the distance $kd_1$ from the origin, $1\leq k\leq n$.
Proving by contradiction, suppose that on every interval $[(j-1)d_1,jd_1], j=1,...,k$ the average speed of the long distance runner is less than $v_2/2$. Then $t_n>2nd_1/v_2$. On the other hand the total time of the long distance runner is $d_2/v_2\geq t_n$. Therefore $$2nd_1 < t_n v_2 \leq d_2 \leq (n+1)d_1,$$ which implies $n<1$, a contradiction.
It is easily seen that $2$ is best possible. Let $d_1=d_2/2+\epsilon$ where $\epsilon>0$ is small. Let the long distance runner run with very high speed for half of the distance, then stop (or run very slowly), and then run with the same high speed to the end. The average speed on every interval of length $d_1$ is close to $1/2$ of the overall average speed.
The same argument proves that $C\leq 1+1/n$ when $n$ is known. Also notice that when $d_2$ is divisible by $d_1$, one can take $C=1$.
Remark. However, this does not solve the problem completely. A complete solution would be the optimal constant $C(d_1/d_2)$$C(d_2/d_1)$ for any given ratio $d_1/d_2$.
Edit. I suppose that $C(x)$ is the following: $C(n)=1$ for every integer $n\geq 1$, $C(n-0)=n/(n-1)$ (these two properties have been proved above), and $C$ is linear between consecutive integers. In particular $C(x)=x$ for $1\leq x<2$.