A four-year-old boy has died after a bullet fired from up to five kilometres away fell through a church roof and struck him in the head.