What I am getting at is that throughout math we have to refer to things using positive integers. In a a polynomial, we talk about the first (that is, the "positive oneth") term and so forth. There is no such thing as the "negative oneth" term of a polynomial. Even in 2*3 = 6, I don't know what you call the two, but maybe it is also referred to as the first term or something. Anyway, perhaps this underlying "bias" towards positive integers is why we consider the product of two negatives to be a positive -- if not that, some other intuition that we might not have if we had objects to represent equations etc. that were not based on positive integers.
Forgive me if this is a dumb question but I have thought about this for a while and I have some experience with mathematics.
An essential building block of mathematics are the natural numbers, which arose by the universal need to count. Negative counts make non sense. [Please don't bombard me with comments explaining how negative counts can be given sense.] So the bias towards positive is obvious.
The case of the product of two negatives is certainly not related to this bias. It comes from the necessity to have a coherent multiplication operation when acting on negatives.
$$(-1)(1-1)=(-1)+(-1)(-1)=0$$ demands $$(-1)(-1)=1.$$
Side remark: the Python language smartly defines a list indexing system such that $0$ and positives denote the first elements, while negatives allow access to the last ones.