Whether or not this guy is gay or straight, you have had WAY too much trouble with this guy than it's worth. The lying, the repeated cheating... that is NOT what relationships are supposed to be about. I'm sure that since you've been with this guy since eighth grade, you hardly know different, but there is MUCH better out there. There ARE men out there that are honest, and faithful, and trustworthy.
Kick this guy to the curb, and get out there and meet a man who is more worthy.
(For the record, it does sound like he's gay.)