Why does entropy halve during its extraction?
I'm sure that somebody can give a better answer, but I can at least point the HKDF paper as containing some references that you might want to chase.  See, e.g., Section 2, "Statistical and Computational Extractors," p. 5:


  Efficient constructions of generic (hence randomized) statistical extractors exist such as those built on the basis of universal hash functions [15]. However, in spite of their simplicity, combinatorial and algebraic constructions present significant limitations for their practical use in generic KDF applications. For example, statistical extractors require a significant difference (called the gap) between the min-entropy $m$ of the source and the required number $m'$ of extracted bits (in particular, no statistical extractor can achieve a statistical distance, on arbitrary sources, better than $2^{−{m−m'\over 2}}$ [60, 63]). That is, one can use statistical extractors (with its provable properties) only when the min-entropy of the source is significantly higher than the length of output.


See also Section 5, "Random Oracles as Computational Extractors," pp. 11-12:


  We note that random functions do not make by themselves good statistical extractors (here the key to the extractor is the description of the function itself). For example, if $\chi$ is the uniform distribution over $\{0, 1\}^{2k}$ (thus having min-entropy $2k$) and we choose a random function $f$ from $2k$ to $k$ bits, we expect $1/e^2$ of the points in $\{0, 1\}^k$ not to be in the image of $f$ (i.e., they are assigned probability 0 regardless of the sample from $\chi$), thus inducing an output distribution that is statistically far from uniform.  Furthermore, the lower bounds on min-entropy gap from [60] mentioned in Section 2 apply to random functions as well.


So the short answer is: because of established theorems about randomness extractors.