A young man has been charged with murder weeks after a 12-year-old boy was fatally shot in Sydney's northwest.