When determining linearity of a differential equation, you effectively treat the independent variable like a constant. So the xy term does not make the ODE nonlinear. In fact, you could replace x with any nonlinear function of x and the ODE would remain linear. Replacing y with y^2, on the other hand, would make the ODE nonlinear.
For your first query, I'm not sure where this lecturer is coming from. For any practical purposes, when you plug values into an equation you will either prove that the value correspond to a solution or prove that they don't. There's no assumptions necessary going in. Maybe this is more informal than what he's talking about.