Perhaps the neatest way to think about it is by defining $ g : \mathbb R \to \mathbb R $ with $ g ( x ) = f ( \exp x ) $ for all $ x \in \mathbb R $. Doing so, we can get
$$ g ( x + y ) = g ( x ) + g ( y ) \tag 0 \label 0 $$
for all $ x , y \in \mathbb R $ from the original functional equation for $ f $. \eqref{0} is known as Cauchy's functional equation, and functions like $ g $ satisfying it are called additive functions. This functional equation is well-studied, and you can find all sorts of things about it here and there. The post "Overview of basic facts about Cauchy functional equation" contains some of the most famous properties of additive functions. One that is relevant here is that \eqref{0} has solutions that are not linear over $ \mathbb R $. Another relevant fact is that the graph of any nonlinear additive function is dense in $ \mathbb R ^ 2 $. This means that if there is a disk in the real plane containing no point on the graph of an additive function $ g $, then $ g $ must be of the form $ g ( x ) = c x $ for some constant $ c \in \mathbb R $. Here is where the condition
$$ f ( x ) - f ( x _ 0 ) \le a ( x - x _ 0 ) \tag 1 \label 1 $$
comes into play. We can substitute $ \exp x $ for $ x $ in \eqref{1} and get
$$ g ( x ) \le f ( x _ 0 ) + a ( \exp x - x _ 0 ) \tag 2 \label 2 $$
for all $ x \in \mathbb R $. While \eqref{2} might not look very pretty, we only need to note that it implies that the graph of $ g $ does not cross any high-enough disks. More explicitly, consider the disk $ D $ in $ \mathbb R ^ 2 $ with unit radius centered at the point $ ( x _ 0 , y _ 0 ) $, where $ y _ 0 = f ( x _ 0 ) + a \bigl ( \exp ( x _ 0 + 1 ) - x _ 0 \bigr ) + 1 $. Then, for every $ x \in ( x _ 0 - 1 , x _ 0 + 1 ) $ we have
$$ g ( x ) \le f ( x _ 0 ) + a ( \exp x - x _ 0 ) < f ( x _ 0 ) + a \bigl ( \exp ( x _ 0 + 1 ) - x _ 0 \bigr ) = y _ 0 - 1 \text , $$
which implies that the point $ \bigl ( x , g ( x ) \bigr ) $ lies outside $ D $. We then get linearity of $ g $, which translates to
$$ f ( x ) = c \log x $$
for some constant $ c \in \mathbb R $ and all $ x \in ( 0 , + \infty ) $.
To prove $ c > 0 $, note that setting $ x = \frac { x _ 0 } e $ in \eqref{1} we get
$$ c ( \log x _ 0 - 1 ) - c \log x _ 0 \le a \left ( \frac { x _ 0 } e - x _ 0 \right ) < 0 $$
and therefore
$$ c \ge a \left ( 1 - \frac 1 e \right ) x _ 0 > 0 \text . $$