Police say Chris Elder approached the girl's 48-year-old grandmother as she was throwing out the garbage out at 6:20 a.m. on 45th Avenue and Robinson Street in Flushing.
He began yelling at her incoherently, authorities said, but the grandmother does not speak English.
Elder allegedly flipped over the cart in which the girl -- named Sophia -- was riding, spilling her onto the pavement.
ALSO READ | No more mask mandates for planes and trains? CDC devising new COVID guidelines: Officials
She sustained a cut to the head and was taken to Flushing Hospital Medical Center to be checked out.
Sophia is now in the care of her uncle, who said she is terrified after spending most of her day in the hospital being treated for injuries to her head.
"He tossed her from it, pushing it, and started to kick her," Gabriel Loja said in Spanish.
He said he was the victim of a random attack where the family last lived in Corona, and that's why they moved to Flushing.
"We decided to move here," he said. "It seemed safer."
Elder was caught nearby at 45th Avenue and Kissena Boulevard and taken to Elmhurst Hospital for evaluation.
He is charged with felony assault, reckless endangerment, acting in a manner injurious to a child, and harassment.
He has at least eight prior arrests, many of them assaults.
Police say he struck a 30-year-old man in the head with a glass bottle on February 25 at a U-Haul location along the BQE.
ALSO READ | 100K borrowers eligible for debt cancellation under new Biden student loan rules
He was charged in that incident following his arrest Friday.
Elder was previously arrested for allegedly assaulting another child, a 9-year-old girl police say he threw to the ground, on December 11 also in Flushing.
He was also arrested on August 21, 2020, for allegedly stabbing his friend in the back of the neck.
* More Queens news
* Send us a news tip
* Download the abc7NY app for breaking news alerts
* Follow us on YouTube
Submit a News Tip