I've been stuck with this question for quite a while and am not sure where to start:
Prove that if $A$ is an $n \times n$ matrix, then $A$ can be written as $B + C$ where both $B$ and $C$ have $n$ distinct eigenvalues. (Hence every square matrix is a sum of two diagonalisable matrices)
I'm thinking that maybe we can split into two triangular matrices but not sure if that's going in a right direction.
You're almost there. Assuming you're working with real matrices, let us denote the diagonal entries as $d_1, d_2, \cdots, d_n$. All you have to do is "split" each $d_i$ into the sum of two numbers $u_i + t_i$, and ensure that all of the $u_i$ and $t_i$ are all different. This is always possible, since for any fixed real $d$ there are infinitely many pairs $(t, u)$ of real numbers such that $t + u = d$.
Note that this works because then you can just represent the matrix as the sum of an upper triangular matrix U with distinct diagonal entries and a lower triangular matrix T with distinct diagonal entries. Since the eigenvalues of such matrices are exactly the diagonal elements, and all diagonal elements are distinct by construction, we know that $U$ and $T$ are both diagonalizable, achieving your result.