Because "someone" in Spanish is actually "alguien," so you would have to say "Oí alguien en mi casa" instead of "Oí una persona..." in order for it to mean "I heard someone in my house."
Of course, you aren't incorrect when it comes to "someone" sounding a lot more natural and not awkwardly verbalized.
I don't think there's anything unusual about specifying that you heard "a person" in your house. If you were telling someone about it, and yet you had not let anyone in and you were supposed to be alone in the house, you might very well specify that it was clearly a person and not say, a rat in the attic or water in a pipe.
You use it after any verb when the object of a sentence is human or a pet.
Some examples are;
I help my family on Mondays - Ayudo a mi familia los lunes (it isn't "ayudo mi familia los lunes) (also, since "family" is a person (or several), the use of the personal "a" must be included)
The girl saw her boyfriend yesterday - La niña vio a su novio ayer (the personal "a" is included here because the object of the sentence is a person "her boyfriend")
Most learners of Spanish find this part of the Spanish language to be difficult to comprehend, but, with practice, it should become second nature.
Here are links to three articles to expand on what King said, though King's explanation is succinct and accurate.
"have" is not needed here. It makes it sound (in English) as if at some point in the past, possibly just once in even the distant past, you heard a person in the house. If you were on the phone with the dispatcher, they would understand it is NOW and recent. "I came to see you" is also clearer than "I have come to see you" tho both are past tense. The "came" is more direct, present, immediate; and it's "preterite tense." "I have come to see you" is "present perfect tense." this site might help. [http://conjugator.reverso.net/conjugation-english-verb-come.html] English speakers such as myself just learn the correct form, if we are lucky, from contexts and imitation of those who speak correct English. But it's hard for me to think why we use one or how it is a little different. And the terms of tenses are problematic because there are often many terms for the same tense. Reverso then is helpful.
Duolingo accepts both "I heard a person in my house" and "I heard a person at my house" as a translation for this. In English, there is a distinct difference in meaning between these two sentences. Is DL correct in accepting both? How would one properly make this particular distinction in Spanish?
I understand this particular sentence translates that way, but there must be a way of making the distinction between hearing someone inside your house (which is frightening and possibly life threatening) and hearing someone at your house (which is generally not). There is most surely a way to relay that information in Spanish. This is what I'm trying to find out.