Combination of two stream ciphers
This sort of combination is vulnerable to a meet-in-the-middle attack.  Let's start from one of your equations:

$$
C = P \oplus f_1(K_1) \oplus f_2(K_2)
$$

If we XOR $f_1(K_1)$ to both sides, we get:

$$
C \oplus f_1(K_1) = P \oplus f_2(K_2)
$$

Now if I have one known plaintext/ciphertext pair $P, C$, to attack the cipher, I can carry out the meet-in-the-middle attack:


I build a table of the values of $C \oplus f_1(K_1), K_1$ for all possible values of $K_1$.  This takes time and memory proportional to $2^{|K_1|}$.
For each possible value of $K_2$ I compute the corresponding $P \oplus f_2(K_2)$, and look it up in the table from step #1.  If I find a match I record that $K_1, K_2$ combination as a candidate key.


Now the key must be one of the candidate keys, and it only took me $2^{|K_1|} + 2^{|K_2|}$ time to find this out, not $2^{|K_1| + |K_2|}$—the combined cipher is much weaker than a cipher with the sum of the key lengths.

(Note that there can be more than one candidate key.  Any $K'_1, K'_2$ such that:

$$
f_1(K'_1) \oplus f_2(K'_2) = f_1(K_1) \oplus f_2(K_2) 
$$

...is a candidate key as well.  But you can bet the number of candidate keys will be much, much smaller than the number of keys.)