The 12-year-old, who has not been identified, was not breathing when he was pulled out of the sand late Tuesday afternoon, officials said. Lifeguards administered CPR on him, and he was taken to Monmouth Medical Center where he was placed in pediatric intensive care unit.
Witnesses at the beach said blood was coming out of the boy's nose when lifeguards were working on him.
Someone screamed for help from lifeguards, who were just 15 feet away, said Roebuck. The boy was pulled out, and lifeguards performed CPR on him as they waited for paramedics.
A beachgoer from Staten Island, N.Y., said the boy wasn't moving.
"They were pumping him, pressing on his stomach, trying to bring him back," she said. "They kept trying to revive him, pressing, pressing. There was blood coming out of his nose... He didn't move."
Sources said the tunnel was deep, and the weight of all the sand on the boy's chest made it impossible for him to breathe.
The boy was rushed to Monmouth Medical Center, where he was taken to the pediatric intensive care unit.
The boy is from Oakhurst, sources said, but his name is being withheld.
Authorities said a fire truck responding to the scene hit a man holding his infant son. The truck hit the pair as it pulled into Ocean Place near the beach, knocking them both to the ground.
Both were taken to the Jersey Shore Medical Center. The father suffered some broken limbs. The baby was injured but not severely.
The firefighter driving the truck was working his last shift before his retirement, officials said.
More content from NBCNews.com:
- Kerry Kennedy says car accident caused by seizure
- Airplane banner tells Penn State: Take Paterno statue down
- US tough on saving elephants from slaughter? Hardly, says WWF
- Uncloaked: Army testing new camo to replace flawed design
- 'No relief' from drought as heat returns to Midwest, Northeast
- Boy Scouts: We're keeping policy banning gays
- Video: Bus driver catches girl, 7, in three-story plunge