I suspect the problem is that "take" is used for more than one meaning.
take = accept. This may be the source of your confusion. Often has a sense of keeping.
take = (accept temporarily and) transport, eg take something to someone. = give, sell, ...
same as carry with me and give
Here take this. = accept, or, from context keep with you when you go,
Take a coat. You may need it.
Take his coat with you. He forget his.
Take his coat with you and give it to him as soon as you see him. He forget his.
Person A is at home, Person B is at school.
1) A takes B some food - pick up, transport, give to B
2) A gives B some food. - give (method not specified) (transport not implied)
Is 1 correct? Does it imply that A is at the school too (that said, they went to the school together)?
Implies A goes to B, probably at school, for the purpose at least
There's also an example in the Oxford dictionary:
"Should I take my host family a gift?"
Does it mean, the person is going to give a gift to their host family? Or accept a gift from their host family?
==> Give, when you go to them.
This is the take = transport to meaning
Should I carry with me a gift for them
And here we have in Longman:
"I have to take Steve the money tonight."
= Transport to Steve (implies give it to him)
alternative
"I have to take the money from Steve tonight. Mother said I had to accept it, even if I don't want to."