Let me proof that theorem in a different way which might help:
Theorem: There is a solution to the agents' optimization problem iff there are no arbitrage opportunities.
i) Proving the first if: Existence of optimal strategy implies no arbitrage
- Suppose that $\theta^\star$ os an optimal trading strategy for the agent with optimal consumption allocation of $c^\star$. Now assume there is an arbitrage opportunity $\theta^{arb}$ - i.e. without the investment of any initial endowment it yields a consumption bundle $c^{arb} > 0 $. This implies that $\theta^\star + \theta^{arb}$ yields $c^\star + c^{arb} > c^{\star}$. Since $U$ is stricty increasing and $\theta^\star + \theta^{arb}$ satisfies the budget constraint it implies that the initial pair $(\theta^\star, c^\star$) is a solution to the investor's problem.
(ii) Proving the second if: nor arbitrage implies a solution to the consumer problem:
- If there are no arbitrage opportunities then a state price vector must exist. As a result asset prices exist (and are unique) and therefore the investors budget set convex. Since the utility is concave we have a solution to the optimization problem.