Let $A_{m,n}$ be the probability that player $A$ flips two consecutive heads before player $B$ flips three consecutive heads, given that $A$'s (resp. $B$'s) current run of heads has length $m$ (resp. $n$). Then
$$
A_{m,n}=\frac{1}{4}\left(A_{m+1,n+1} + A_{m+1,0} + A_{0,n+1}+A_{0,0}\right);
$$
the boundary conditions are that $A_{m,n}=1$ for $m\ge 2$ and $n < 3$, and $A_{m,n}=0$ for $m \le 2$ and $n\ge 3$. You want to find $A_{0,0}$. The relevant six equations are:
$$
\begin{eqnarray}
A_{0,0} &=& \frac{1}{4}A_{1,1} + \frac{1}{4}A_{1,0} + \frac{1}{4}A_{0,1} + \frac{1}{4}A_{0,0}\\
A_{0,1} &=& \frac{1}{4}A_{1,2} + \frac{1}{4}A_{1,0} + \frac{1}{4}A_{0,2} + \frac{1}{4}A_{0,0} \\
A_{1,0} &=& \frac{1}{2} + \frac{1}{4}A_{0,1} + \frac{1}{4}A_{0,0} \\
A_{1,1} &=& \frac{1}{2} + \frac{1}{4}A_{0,2} + \frac{1}{4}A_{0,0} \\
A_{0,2} &=& \frac{1}{4}A_{1,0} + \frac{1}{4}A_{0,0} \\
A_{1,2} &=& \frac{1}{4} + \frac{1}{4}A_{0,0},
\end{eqnarray}
$$
or
$$
\left(\begin{matrix}3/4 & -1/4 & -1/4 & -1/4 & 0 & 0 \\
-1/4 & 1 & -1/4 & 0 & -1/4 & -1/4 \\
-1/4 & -1/4 & 1 & 0 & 0 & 0 \\
-1/4 & 0 & 0 & 1 & -1/4 & 0 \\
-1/4 & 0 & -1/4 & 0 & 1 & 0 \\
-1/4 & 0 & 0 & 0 & 0 & 1
\end{matrix}\right)\times\left(\begin{matrix} A_{0,0} \\ A_{0,1} \\ A_{1,0} \\ A_{1,1} \\ A_{0,2} \\ A_{1,2}
\end{matrix}\right)
= \left(\begin{matrix}
0 \\
0 \\
1/2 \\
1/2 \\
0 \\
1/4
\end{matrix}\right),
$$
assuming no typos. Further assuming no typos entering this into WolframAlpha, the result is
$$
A_{0,0} = \frac{1257}{1699} \approx 0.7398,
$$
which at least looks reasonable.
Update: As pointed out in a comment, the above calculation finds the probability that $A$ gets two consecutive heads sooner than $B$ gets three consecutive heads; the original problem asks for the opposite. The correct boundary conditions for the original problem are that $A_{m,n}=1$ for $m<2$ and $n\ge 3$ and $A_{m,n}=0$ for $m\ge 2$ and $n\le 3$. The matrix equation becomes
$$
\left(\begin{matrix}3/4 & -1/4 & -1/4 & -1/4 & 0 & 0 \\
-1/4 & 1 & -1/4 & 0 & -1/4 & -1/4 \\
-1/4 & -1/4 & 1 & 0 & 0 & 0 \\
-1/4 & 0 & 0 & 1 & -1/4 & 0 \\
-1/4 & 0 & -1/4 & 0 & 1 & 0 \\
-1/4 & 0 & 0 & 0 & 0 & 1
\end{matrix}\right)\times\left(\begin{matrix} A_{0,0} \\ A_{0,1} \\ A_{1,0} \\ A_{1,1} \\ A_{0,2} \\ A_{1,2}
\end{matrix}\right)
= \left(\begin{matrix}
0 \\
0 \\
0 \\
0 \\
1/2 \\
1/4
\end{matrix}\right),
$$
The result becomes $A_{0,0}=\frac{361}{1699}\approx 0.2125$. The two results add to slightly less than one because there is a nonzero probability that both players hit their goals at the same time... this probability is $81/1699\approx 0.0477$.
First, I want to explain what was wrong with your answer. Your answer should just have $\left(\frac 1 2\right)^K$ (not $2*\left(\frac 1 2\right)^K$) since you just want streaks of heads, not tails. Also, your final answer has $K$ in it, so you need to sum this up from $K=0$ to $n$. However, even if you do that, you won't actually get the correct answer because just because you have a set of consecutive tosses that are all heads doesn't mean that it's actually a run of head. For it to be a run of head, it needs to either be the whole string, start from the beginning and have tails immediately after it, have tails immediately before and after it, or have tails immediately before it and end at the end. Since we need to deal with all of these different cases, doing this method is going to be rather confusing, so let's take a simpler approach.
For $n=1$, the answer is $\frac 1 2$ because there are two possibilities: $H$ which has $1$ run of head and $T$ which has $0$ runs of heads.
For $n > 1$, the answer is $\frac 1 2+\frac{n-1}{4}$ because we add $\frac 1 4$ to the expected number of runs of heads each time we add on a new coin toss. This is because the probability that we add a run of head by adding on another coin toss to a random string is the probability that the coin ends in tails and the probability that the next coin toss is heads. This is clearly $\frac 1 2*\frac 1 2=\frac 1 4$, which means the probability we add another run of heads with another coin toss is $\frac 1 4$ each time.
Thus, the end result is that the expected value of the number of runs of heads after $n$ coin tosses is $\frac 1 2+\frac{n-1}{4}=\frac{n+1}{4}$.
Best Answer
Let $p(m,h;\,n,k)$ be the probability of turning up a run of $k$ or more heads given:
Then we have the implications:
The probability of a run existing of length $\geq k$ in $n$ flips, which we denote $p_{\text{run}\geq k}$ is given by $$p_{\text{run}\geq k} = p(0,0;\,n,k)$$ and we can recursively substitute in $p$ values for larger values of $m$ and $h$ until the expression is complete. Note that this process runs in $O(n^2)$ [i.e. quadratic] time.
Example
Given $n = 6,\,k = 3$, and omitting the latter two parameters of $p$ for brevity:
$$p_{\text{run}\geq 3} = p(0,0)$$
$$\begin{array}{rcll}\mathbf{Function} & {} & \mathbf{Expression} & \mathbf{Condition} \\ p(0,0) & = & p_1p(1,1) + q_1p(1,0) & (6^{=\,n}-0^{=\,m}) + 0^{=\,h} \geq 3^{=\,k} \\\hline p(1,0) & = & p_2p(2,1) + q_2p(2,0) & (6^{=\,n}-1^{=\,m}) + 0^{=\,h} \geq 3^{=\,k} \\ p(1,1) & = & p_2p(2,2) + q_2p(2,0) & (6^{=\,n}-1^{=\,m}) + 1^{=\,h} \geq 3^{=\,k} \\\hline p(2,0) & = & p_3p(3,1) + q_3p(3,0) & (6^{=\,n}-2^{=\,m}) + 0^{=\,h} \geq 3^{=\,k} \\ p(2,1) & = & p_3p(3,2) + q_3p(3,0) & (6^{=\,n}-2^{=\,m}) + 1^{=\,h} \geq 3^{=\,k} \\ p(2,2) & = & p_3p(3,3) + q_3p(3,0) & (6^{=\,n}-2^{=\,m}) + 2^{=\,h} \geq 3^{=\,k} \\\hline p(3,0) & = & p_4p(4,1) + q_4p(4,0) & (6^{=\,n}-3^{=\,m}) + 0^{=\,h} \geq 3^{=\,k} \\ p(3,1) & = & p_4p(4,2) + q_4p(4,0) & (6^{=\,n}-3^{=\,m}) + 1^{=\,h} \geq 3^{=\,k} \\ p(3,2) & = & p_4p(4,3) + q_4p(4,0) & (6^{=\,n}-3^{=\,m}) + 2^{=\,h} \geq 3^{=\,k} \\ p(3,3) & = & 1 & 3^{=\,h} = 3^{=\,k} \\\hline p(4,0) & = & 0 & (6^{=\,n}-4^{=\,m}) + 0^{=\,h} < 3^{=\,k} \\ p(4,1) & = & p_5p(5,2) + q_5p(5,0) & (6^{=\,n}-4^{=\,m}) + 1^{=\,h} \geq 3^{=\,k} \\ p(4,2) & = & p_5p(5,3) + q_5p(5,0) & (6^{=\,n}-4^{=\,m}) + 2^{=\,h} \geq 3^{=\,k} \\ p(4,3) & = & 1 & 3^{=\,h} = 3^{=\,k} \\\hline p(5,0) & = & 0 & (6^{=\,n}-5^{=\,m}) + 0^{=\,h} < 3^{=\,k} \\ p(5,1) & = & 0 & (6^{=\,n}-5^{=\,m}) + 1^{=\,h} < 3^{=\,k} \\ p(5,2) & = & p_6p(6,3) + q_6p(6,0) & (6^{=\,n}-5^{=\,m}) + 2^{=\,h} \geq 3^{=\,k} \\ p(5,3) & = & 1 & 3^{=\,h} = 3^{=\,k} \\\hline p(6,0) & = & 0 & (6^{=\,n}-6^{=\,m}) + 0^{=\,h} < 3^{=\,k} \\ p(6,3) & = & 1 & 3^{=\,h} = 3^{=\,k} \end{array}$$
Back-substituting yields: $$\begin{split}p_{\text{run}\geq 3} = {p_1}{p_2}{p_3} + {p_1}{p_2}{q_3}{p_4}{p_5}{p_6} + {p_1}{q_2}{p_3}{p_4}{p_5} + {p_1}{q_2}{q_3}{p_4}{p_5}{p_6} + {} \\ {q_1}{p_2}{p_3}{p_4} + {q_1}{p_2}{q_3}{p_4}{p_5}{p_6} + {q_1}{q_2}{p_3}{p_4}{p_5} + {q_1}{q_2}{q_3}{p_4}{p_5}{p_6}\end{split}$$
As for getting a closed-form expression when $p_i = f(i)$, you may want to play around with various values of $n$ and $k$ and see if the sequence of coefficients in the multinomial appears somewhere in OEIS. (Note that if you do this, you'll probably want to express the multinomial solely in terms of $p_i$'s [not $q_i$'s], since the multinomial exhibits no symmetries in terms otherwise.)