Any bird of prey that includes birds in it's diet will likely eat the head too. It provides food, and so it is eaten.
It's just the Circle of Life... they need to live, so they need food.
It is because their mouths are thin, can eat worms.
Short answer is yes. Many types of birds will eat baby birds of another species. Some adult birds will eat (or at least kill) baby birds in the same flock with them if they are left unattended by...
Not all birds eat seeds, but the ones that do eat it because it provides nourishment. (It is their food.)