I mean the word EVER specifies a period of time in the past and until present during which something under question happens.
I thought DID wouldn't fit here, because it specifies only occurence of one event or a fact without relevance to any time span, while HAVE+Participle specifies time in the past and until present during which an event/s under question has/ve occured.
Have you ever eaten haggis? - you are right, this does not apply to any specific time when haggis eating was possible, it just means at some point in the past.It could also be asked of people who you have no special reason to believe might have eaten haggis.
Did you ever eat haggis? I would take this as meaning during a particular time period and/or when you feel it is a real possibility.