I have thoughts on a couple of different approaches, although I'm sure there'll be simpler options.
Firstly, imagine you start from a two-qubit state $|00\rangle$, and apply an $R_x$ rotation with an angle equivalent to half that of a Pauli $X$ to the first qubit (I forget which convention N&C is using for their rotation gates). Then apply a controlled-not controlled off the first qubit and targeting the second qubit. Next, apply the inverse of the first rotation. Finally, measure the first qubit. If you get answer $|1\rangle$, the second qubit is in the $|-\rangle$ state. If it isn't, discard and repeat. So, we can produce the $|-\rangle$ state. If you input this as the target qubit of the controlled-controlled-$R_x$ (of arbitrary rotation angle), and have one of the controls in the $|1\rangle$ state, you get an arbitrary $Z$ rotation on the other control qubit.
So, we know we can do arbitrary $X$ and $Z$ rotations, meaning that you can make any single-qubit unitary. Combine that with controlled-not and you know you have universality.
A second approach that I had in mind (I've not worked out the details) is to go for encoded universality, in much the same way as you can use to show that computation with real amplitudes is universal. To sketch the idea: for a computation on $N$ logical qubits, you need $N+1$ physical qubits. The extra qubit is a phase register, so if you have $|x\rangle(\cos\theta|0\rangle+\sin\theta|1\rangle)$, that is equivalent to $e^{i\theta}|x\rangle$ in a regular quantum computation (this is the real computation version. I think the definition will need to change slightly here). Now $X$ rotations and controlled-nots are performed exactly as they normally would be in the first $N$ qubits. However, a phase gate is now implemented by a controlled-$X$ rotation, controlled of the qubit that's supposed to be acquiring the phase, targeting the phase qubit. If you can achieve that set of gates, you should be able to compose that for universality.