A man has been charged after an 11-year-old boy was shot in the face inside a home in Sydney's northwest.