에게/한테 is the dative marker; it is attached to the word at which the verb in the sentence is directed, i.e. whatever or whoever the verb is being done to. In this sentence, 아이 is being given 주다 something, so it is marked with -에게. 가/이 is the subject marker; this sentence is an imperative clause, a command, so the subject would be the listener (i.e., "You, give the child a ball," 'you' is the subject). In these kinds of sentences, the subject is often omitted, as it is implied in the structure of the sentence.
Yes, that's how clauses with transitive verbs work in English; you can drop the preposition between the verb and its indirect object if both appear before the direct object in the sentence. "Give a ball to the kid" but "Give the kid a ball".
A native English speaker will intuitively understand the word order as meaning the verb is ditransitive, the first noun is the indirect object, and the second noun is the direct object. "Give him a donut", "pass the lady her change", "throw the dog a bone". You need to add "to" before the indirect object if it comes after the direct object to signal that the word order has changed.