I am working on a proof regarding partitions (Jech 9.7), and I am unfortunately stuck on the last step. I will give all the details up to this point, but I don't think they are all required. 

Let $\kappa$ be an infinite cardinal, and let $\{ A, B\} $ be a partition of $[\kappa]^2$. For each $x \in \kappa$, define $B\_x := \{ y \in \kappa \mid x < y \text{ and } \{x, y\} \in B \}$.

Now suppose that $\kappa$ is singular, and that there exists a set $S \subseteq \kappa$ such that for all $x \in S$, $|B\_x \cap S | < \kappa$. Let $\lambda = \operatorname{cf}{\kappa}$. Consider an increasing sequence of regular cardinals $\langle \kappa\_{\xi} \mid \xi < \lambda \rangle$, with the property that each cardinal is $> \lambda$. We also assume that there is no set $H \subseteq \kappa$ of size $\omega$ such that $[H]^2 \subseteq B$, and that for all $\xi \in \lambda$ we have $\kappa\_{\xi} \rightarrow (\kappa\_{\xi}, \omega)^2$.

Now construct a partition $\{S\_{\xi} \mid \xi < \lambda \}$ of $S$, such that $|S\_{\xi}| = \kappa\_{\xi}$. From the above it follows that there are sets $K\_{\xi} \subseteq S\_{\xi}$ such that $| K\_{\xi}| = \kappa\_{\xi}$ and $[K\_{\xi}]^2 \subseteq A$.

It follows (details omitted) that for every $\xi < \lambda$, there exists an $\alpha(\xi)$ such that the set $Z\_{\xi} = \{x \in K\_{\xi} : |B\_x \cap S| < \kappa\_{\alpha(\xi)}\}$ has cardinality $\kappa\_{\epsilon}$. Let $\langle \xi\_{\nu} \mid \nu < \lambda \rangle$ be an increasing sequence of ordinals $< \lambda$ such that if $\nu\_1 < \nu\_2$, then $\alpha(\xi\_{\nu\_1}) < \large\xi\_{\nu\_2}.$

We define $H\_{\nu} = Z\_{\xi\_{\nu}} \setminus \bigcup \{B\_x \mid x \in \bigcup\_{\eta < \nu} Z\_{\xi\_{\eta}}\}$. Then $|H\_{\nu}| = \kappa\_{\xi\_\nu}$ and $[H\_{\nu}]^2 \subseteq A$. Letting $H = \bigcup\_{\nu < \lambda}H\_{\nu}$, we have that $|H| = \kappa$, but I am stuck trying to show that $[H]^2 \subseteq A$. It's supposed to follow by construction of $H$, but I'm not sure how it does so.

I'm sorry that this post is so long, but any help would be much appreciated.

My initial attempt: My first idea was to take $\{w,z\} \in [H]^2.$ Then there exists $\nu, \nu' < \lambda$ such that $w \in H\_{\nu}$ and $z \in H\_{\nu '}$. We can assume that $\nu ' < \nu$. It follows by definition of $H$ that $w \not\in B\_z$. This means that either $\{w,z\} \in A$ (which is good) or that $w < z$. I am finding it hard to find a contradiction if we assume that $w < z$ and that $\{w, z\} \not \in A$.