Using "over" makes me think of two people sitting down and chatting about something, whereas "at" makes me think of either a family or friends (a larger number of more intimate people). I think it's because when you say "Can we discuss this over dinner?" you are kind of inviting that person to dinner. But when you say, "Can we discuss this at dinner?" it is already a given that you are having dinner with them, which makes it more familiar. Using "on" makes no sense in this context; I would only use "on" with a date/day: "Let's discuss this on Thursday" or "Could we discuss this at dinner on the twenty-second?"
The only time I say "dinner-time" is when I am calling my sisters to come eat: "IT'S DINNER TIME!" Saying "can we discuss this at dinner time" sounds a little strange to me, though I would know the meaning just the same.
I hope I have been of help,