Separation of variables is very dicey. I only know of one pde arising from physics that is solvable by separation of variables (Dym's equation). Most linear methods don't work because they depend on superposition, which doesn't hold for nonlinear equations.
There is one method of recent development on which I actually wrote my Ph.D. dissertation: the inverse scattering transform method. I don't think it works on all nonlinear pde's (otherwise they'd have probably solved the Navier-Stokes equation by now!). The inverse scattering transform maps the original pde to a linear system of ode's. You solve those, and then you have to solve a complicated but linear integral equation to get to your final solution. The whole process is extremely involved, and my dissertation was concerned with only a part of the whole procedure.