Even if 千年前 can mean "millennia ago" (which is arguable at best), there's no point for ambiguity.
If Kubo had wanted to accurately say when all that happen in the past, he could have 二千年前 (2000 years ago), 三千年前 (3000 years ago), etc.
Therefore, it would logical to assume that 千年前 means 1000...