The 21-year-old suspect, Carlos Navarro, tried to excuse himself when the woman turned on the lights in her 14-year-old daughter's room, but she told him he wasn't going anywhere.
"I told him, you know what I can do to you? I can get my gun and shoot you and nobody's going to say anything to me because you are in my house," the woman told KHOU-TV, Houston.
The girl's stepfather put the suspect in a headlock until police arrived.
Suspect Carlos Navarro was charged with sexual assault on a child. He apparently met the girl online.
The daughter was grounded indefinitely and faces a long ban from the Internet, the family said.
Couple mistakenly served bag of cash at McDonald's drive-thru
Jordana Brewster on Paul Walker: 'He was an enormous presence in my life'