I'll be needing to do exactly the same thing - get all the tiles that are overlapping a sprite. There doesn't appear to be a built-in function, and I agree this seems like something that would be very useful for many, many people. I'd also like to be able to query tile size for different tilemaps at runtime, but that's another thread.
Anyway, since we don't seem to have what you're looking for I have some suggestions you can try, with the caveat that I haven't tried them myself yet.
You can test points along the edges of your character sprite (not just the default image point) using Tilemap.PositionToTileX() and Tilemap.PositionToTileY(). Assuming your default image point is in the center of your character sprite, this will give you the X position of the right edge of the sprite: