First, "of my heart" simply means that something is associated with your emotions:
You are the love of my heart.
Also, when we use words like "heart" or "head" metaphorically, prepositions may not mean what you think they mean. Consider:
You really got in my head for a minute there.
That simply means, "You affected my thoughts," and (thankfully) has nothing to do with you shrinking and climbing into my skull.
As for "of my heart" vs. "in my heart", here's one way I might characterize the two:
- of my heart can be used with the definite article, to indicate preeminent personal feelings
- in my heart can be used with the indefinite article, to project a role
For example:
You are a diva in my heart. (means: in my heart, I regard you as a diva)
You are the diva of my heart. (means: in my heart, I regard you as the diva)
So, back to what you said:
"of my heart" sounds like you have several hearts, and one of them is your champion...
Instead:
the champion of my heart
means something more like:
there may be several people who could be my champion, but, in my heart, you are my true champion
Disclaimer: I wouldn't regard this as a hard-and-fast rule with zero exceptions. As was mentioned, prepositions are very tricky. Macmillan lists more than 20 possible usages of the word of, and when you combine those with metaphorical words such as head, heart or skin, some preposition-noun combinations will indeed be idiomatic, and need to be learned one-by-one (such as, "She really gets under my skin.")
This is a metaphorical usage of sense 16 in Collins for learners:
You use at to say how something is being done.
In this case, physical abuse at the hands of women could be taken literally - that is, women may be using their hands to do this - but it is likely being used metaphorically, and means that women are responsible for the physical abuse.
In fact, it has its own sense (#12) in Collins for learners:
If someone experiences a particular kind of treatment, especially unpleasant treatment, at the hands of a person or organization, they receive it from them.
In answer to your more general question about at: yes, you can use it with a noun.
- at home
- at school
- at the hospital
- at the side of the road
Best Answer
The more idiomatic usage is "an answer to" this question. The preposition "for" could be used alternatively but it is less common.
Other preposition can be used but are much less common as shown in Ngram and they may convey different meanings.