Have you read Nick Corcodilos's Reinventing the Interview? There is a lot of overlap with your advice (understand the employer's problems, explain your value, etc.) Related to "Do free work", something I always liked, he recommends you actually do the work you're being hired for in the interview. How better to demonstrate how capable you are?