In Tu's Introduction to Manifolds he proves that if $s$ and $t$ are smooth sections of a smooth vector bundle $\pi: E \rightarrow M$ and $f$ a smooth real-valued function on $M$, then $s + t$ and $fs$ are also smooth sections of $E$ (Proposition 12.9 in the book). To prove this he lets $V$ be a trivializing open set for $E$ and defines the smooth trivialization $$\phi: \pi^{-1}(V) \rightarrow V \times \mathbb{R}^n$$ and $$(\phi \circ s)(q) = (q, a^1(q), \ldots, a^r(q)), \quad (\phi \circ t)(q) = (q, b^1(q), \ldots, b^r(q)).$$ He claims since $\phi$ is linear, it follows that $$(\phi \circ (s+t))(q) = (q, a^1(q)+b^1(q), \ldots, a^r(q)+b^r(q))$$ which just about finishes the proof.
I do not see how $\phi$ is necessarily linear. Is this a property of trivializations or a consequence of his construction in the proof?
It is part of the definition. The point is: let $V$ be a small subset in your manifold $M$, and $\pi^{*}V$ its preimage in the vector bundle $E$. The vector bundle is a smooth manifold, so technically, if $V$ is small enough, you could find a homeomorphism: $\pi^*V \overset{\sim}{\longrightarrow} R^m \times R^n$ (where $m = \dim M$, $n = \text{rank}(E)$).
But say you don't care about transforming the "$M$-part of your coordinates" in $\mathbb{R}^m$ coordinates, and you want to keep it as it is. So all you want to transform is the "$E$" part.
$E$ is a vector bundle, so any fiber $\pi^{-1}(x) \subset \pi^*V$ (for $x \in V$) is a vector space. So the most natural definition for a trivialization is a map $\pi^*V \overset{\sim}{\longrightarrow} U \times \mathbb{R}^n$, which isomorphically maps every fiber $\pi^{-1}(x)$ above a point $x$ to a copy of $\mathbb{R}^n$ (more specifically, the copy $\{x\}\times\mathbb{R}^n$ in $U\times\mathbb{R}^n$).
In other words, a trivialization $\phi$ of $\pi^{*}V$ is a "collection of fiber-isomorphisms" making the following diagram commute:
Now, isomorphisms are linear. So yes, all trivializations are linear by definition.