So can you explain why we have to wait to get a code via XLM. Why can't we just download it right away? This is kind of crap if someone preorders 3 days before HW2 comes out hopeing to brush up his/her skills in HW he/she can't. So in that kind of case preordering would be pointless. This is like buying a house expecting to move in that day but finding out you have to wait 7-10 months. You wouldn't do that would you? No right minded person would do that they would want there money back.
Because the game is part of a bundle and is being released in the early access program. Due to the way Xbox Live works in these situations the bundle item can't be released separately, so in these cases tokens are issues to allow eligible members the ability to get the additional content before the game is fully released. As Halo Wars 2 is the main title and not in early access, it can be released a few days before launch without the need for extra tokens.
Your house analog is a little flawed as it is ridiculously rare to be able to buy a house and be ready to move in on the very same day. There's a lot of legal paperwork to get in order before these kinds of things can be done, nothing that can compare to buying a video game.