First of all, let $G$ (think "Gaussian") be the function taking $x$ to $\exp(-1000x^2)$, which is almost exactly $0$ except when $x$ is very close to $0$, and has $G(0)=1$.
Let $f_0(x) = 3\tanh(1000x)$. This has $f_0(0)=0$, and except very close to $0$ it's almost exactly $-3$ for negative $x$ and $+3$ for positive $x$. Note that in particular $f_0$ satisfies condition $10$.
We will now make "local" modifications to $f_0$ to satisfy the required properties, mostly by adding shifted and scaled copies of $G$. The coefficients required to get the properties to hold exactly will be the result of solving a system of linear equations; we will make sure the system does have a solution.
So, we'll add $a_1\cdot G(x-2) + a_2\cdot G(x-3)$ where we expect $a_1 \approx 1$ and $a_2 \approx 1$. These will make our function satisfy condition $1$.
We'll add $a_3\cdot G(x-1)\cdot \sqrt[3]{x-1}$. This will make our function satisfy condition $2$ provided $a3>0$; we'll take it to be small and positive.
We'll add $a_4\cdot G(x-10) + a_5\cdot G(x+10)$. This will make our function satisfy condition $4$ provided $a4,a5>0$. Again we'll take these to be small and positive.
Condition 5 will be satisfied simply because we are starting with something well-behaved and never close to $-999$ and never doing anything to bring it close to $-999$.
We'll satisfy condition $6$ by adding $-a_6\cdot G\left(\frac{x-10^{500}}{10^{100}}\right)$ for some value of $a_6$ close to $-1$ (so we are making a big long stretch of values where $f$ is close to $2$ instead of $3$).
Condition 7 is satisfied because $f(x)=x$ near $x=0$, somewhere between $-3$ and $0$, and somewhere between $0$ and $3$. This is true for $f_0$ and can't be made untrue by any of the continuous local modifications we've made above.
Condition 8 is true of $f_0$ and, again, all the changes we've made (and will make) are too small to break it.
Condition 9 is satisfied because $f(5) \approx 3$ and $f(-5) \approx -3$.
Condition 10 is satisfied because it's true of $f_0$ and our final $f$ is $f_0$ plus things that tend to $0$ as $|x|\to\infty$.
Condition 11 unfortunately requires our function to have a discontinuity. Let's put one at $x=100$ by adding $a_{10}\cdot\frac{G(x-100)}{(x-100)^2}$. Although this makes an infinitely large change near to $x=100$, its effect is tiny away from there for the usual reasons. (Sorry for the out-of-order coefficient index; the first version of this answer claimed that conditions 11,12 were inconsistent because I misunderstood the OP's terminology, and this paragraph was added later.)
Condition 12 is satisfied because our function is a sum of continuous functions.
We'll satisfy condition 13 by adding $a_7\cdot G(x-10^{200})$ where $a_7 \approx -2$.
We'll satisfy condition 14 by adding $a_8\cdot G(x+7)\cdot(x+7)^3$. We'll take $a_8$ to be small and positive.
We'll satisfy condition 15 by adding $a_9\cdot G\left(x-\left(10^{1000}+\frac12\right)\pi\right)$ where $a_9 \approx -2$, so that we get two extra intersections near $10^{1000}$. Note that we aren't making $a_9$ large enough to push $f$ below the $x$-axis, so we don't violate condition 8.
OK, now how exactly do we choose our parameters? We begin with ones that don't interact with one another interestingly: let's say $$a_3=0.01,\quad a_4=0.01,\quad a_5=0.01,\quad a_8=0.01,\quad a_9=-2.1,\quad a_{10}=0.01$$ These enforce conditions 2, 4, 14, 15, 11, and provided our other coefficients aren't preposterously huge (which they won't be) the mostly-local modifications the others make can't stop these conditions holding.
Now we need to set $a_1,a_2,a_6,a_7$ so as to get the right values of $f(2), f(3)$, the integral from condition 6, and $f(10^{200})$. The point here is that the changes in these values are a linear function of those coefficients, and the matrix describing the changes is "diagonally dominant" because each coefficient has only a tiny effect on the "other" values we are trying to change. This guarantees that the matrix is invertible, and therefore that there are choices of $a_1,a_2,a_6,a_7$ that exactly achieve the required values.
Our final function is $f_0$ plus a sum of ten other smooth functions, each of them either Gaussian or another nice simple function times a Gaussian. It satisfies all the conditions.