The phrase two-hour session should have a hyphen, because you are making a singular of what is actually plural, i.e. two hours.
But what about a one hour session? Should that be 'one-hour session'?
Because you are making an adjective out of the words one and hour, you should hyphenate. The combination of one and hour modifies the word session.