I have the following constrained maximisation problem $$\begin{array}{ll} \text{maximize}_{x,y,c,d} & q f(c) +(1-q) f(d) \\ \text{subject to} & x+y\leq 1 \\ & cq\leq y \\ & d (1-q)\leq R x \end{array}$$ where $q \in (0,1)$, $f$ is twice continuously differentiable and strictly concave increasing, $R>1$, $c,d,x,y \geq 0$. The solution is $(c^\star, d^\star, x^\star, y^\star)$ such that $f'(c^\star)=R f'(d^\star)$, $x^\star=c^\star q$, $y^\star=\frac{d^\star*(1-q)}{R}$ and $c^\star q+\frac{d^\star (1-q)}{R}=1$
Can you formally explain me why this problem has one unique solution and whether there is a reason for the constraints to be all binding?
The existence of a solution follows because the set of admissible values of x,y,c and d is compact and the objective function is continuous. The uniqueness follows because the set of admissible values of x, y, c and d is convex, and the objective function is strictly concave. One has to show compactness, convexity, continuity, and strict concavity, but if you can do this, then what I described works.
The constraints are binding because you want to choose c and d as large as possible. Because the choice of c and d is constrained from above by multiples of x and y, you want to choose x and y as large as possible. Therefore, x+y=1 has to bind, and given that, the upper bounds on c and d have to bind.