It's actually a genitive case here (which basically has the same form as the dative case though when used with a noun). You can see this is actually a genitive case, rather than a dative one, when using the pronouns - (Genitive) Câinele sare asupra mea/ta/lui/ei/noastră/voastră/lor VS (Dative) Grație/Datorită mie/ție/lui/ei/nouă/vouă/lor.
When you translate this to English, you have to use 'on' to make it more natural. But if you want to make a more literal translation it would be 'on top of', I guess. On top of me/you/him, being the 'of' part the closest you can get in this case to a genitive case in the English phrase.
Perhaps this example is clearer: ”Câinele sare asupra masei” - The dog jumps on the table. ”On top of the table” - the romanian sentence is actually that the dog jumps to the upper part/ the top part of something, whose upper part / the table's.
I hope my explanation made it clearer to you, rather than more confusing...