One can immediately see that for all $z\in\Bbb C^\times:=\Bbb C\setminus\{0\},$ we have $$\left|z^2f(z)\right|=|z|^2|f(z)|\le|z|^4+1.$$
As a result, the Laurent series for $g(z):=z^2f(z)$ cannot have any terms of power greater than $4,$ for if there were any, then for sufficiently large $|z|,$ the above inequality would fail to hold. Moreover, we see that $g$ is bounded in the punctured unit disk, so its Laurent series has no terms of negative power, and so is a polynomial of degree no greater than $4.$
Since $f$ is odd, then $g(-z)=(-z)^2f(-z)=z^2f(-z)=-z^2f(z)=-g(z),$ and so $g$ is odd. Hence, all terms of the Laurent series for $g$ have odd power, and so $$g(z)=az^3+bz$$ for some $a,b\in\Bbb C,$ whence $$f(z)=az+\frac{b}{z}.$$
Added: To see why all terms of the Laurent series of $g$ must have odd power, suppose $h$ is an odd function that is holomorphic in $\Bbb C^\times.$ Note that for all $z\in\Bbb C^\times,$ we have $$0=h(z)+h(-z).\tag{$\heartsuit$}$$ Now, write $$h(z)=\sum_{n\in\Bbb Z}b_nz^n,$$ and consider out the expansion for the right-hand side of $(\heartsuit).$