We depict Carnot's process in the $T-S$ diagram:
Steps $2$ and $4$ are adiabatically reversible, also called isentropic, so we don't need to worry about those two. We focus in steps $1$ and $3$. Since they are isothermal, for an ideal gas, there is no change in the internal energy. Thus, $q = -w$ or
\begin{align}
w_{12} = -RT_1\ln\left(\frac{v_2}{v_1}\right)<0 \qquad
q_{12} = RT_1\ln\left(\frac{v_2}{v_1}\right)>0 \tag{1/2} \\
w_{34} = -RT_2\ln\left(\frac{v_4}{v_3}\right)>0 \qquad
q_{34} = RT_2\ln\left(\frac{v_4}{v_3}\right)<0 \tag{3/4} \\
\end{align}
For the surroundings, Carnot introduces the concept of a heat reservoir. This means "something" that can exchange an infinite amount of heat without a change of temperature. You may laugh at this, but they exist for practical purposes on earth. The most simple example is the ocean. We can dump a lot of high-energy toxic residuals.... Do you think the temperature of the ocean is going to change? No.
The entropy change for the a reservoir, since $T$ is constant, is just the famous formula $\Delta S = Q/T$.
We also remember the entropy change for an ideal gas as a function of temperature and volume
$$ \Delta S = \int_{T_1}^{T_2} \frac{C_V^\mathrm{ig}(T)}{T} \,
\mathrm{d}T + R \ln\left(\frac{v_2}{v_1}\right) \tag{5} $$
First we will prove that the best outcome for the step $1-2$ is that the temperature of the system is equal to that of the surroundings. We will name this unknown temperature $\color{magenta}{T_\mathrm{sur,I}}$, as in the picture, in pink. Then we will discuss it.
Step $1-2$ Here, the fluid expands so the system does work. In order to maintain the temperature constant, the surroundings must give heat to the system. The entropy change of the system, by Eq. (5) since $T$ is constant, yields
\begin{equation}
\Delta S_\mathrm{sys,12} = R\ln\left(\frac{v_2}{v_1}\right) > 0 \tag{6}
\end{equation}
For the entropy change of the surroundings, the heat that it loses is exactly Eq. (2), but with its sign reversed
\begin{equation}
\Delta S_\mathrm{sur,12} = \frac{-q_{12}}{T_\mathrm{sur,I}} \rightarrow
\Delta S_\mathrm{sur,12} = -\frac{RT_1\ln(v_2/v_1)}{T_\mathrm{sur,I}} \tag{7}
\end{equation}
Thus, the total entropy change in this step is the sum of Eq. (6) and (7)
\begin{align}
\Delta S_\mathrm{12} &= \Delta S_\mathrm{sys,12} + \Delta S_\mathrm{sur,12} \\
&= R\ln\left(\frac{v_2}{v_1}\right) -
\frac{RT_1\ln(v_2/v_1)}{T_\mathrm{surr,I}} \\
&= R\ln\left(\frac{v_2}{v_1}\right) \left(1 - \frac{T_1}{T_\mathrm{surr,I}}\right)
\tag{8}
\end{align}
What can be the best possible outcome for the heat engine? We know the answer, and is that outcome that minimizes the entropy. Not only that, we can achieve its limit given by the second law, and by Eq. (8) this means that
\begin{equation}
R\ln\left(\frac{v_2}{v_1}\right)\left(1 - \frac{T_1}{T_\mathrm{sur,I}}\right) = 0
\therefore \boxed{T_1 = T_\mathrm{sur,I}} \tag{9}
\end{equation}
I leave to you the proof for step $3-4$, which is analogous, and derive that $T_2 = T_\mathrm{sur,II}$.
The idealization of Carnot engine stems from equaling Eq. (8) to zero. There is no need to do that, in fact, we can perfectly use a reservoir that is at a higher temperature than $T_1$. However, this inevitably brings some increase of entropy.
You are correct to affirm that to bring a change of temperature we need a driving force. This is what every phenomenological law about a flux tells us. Fourier's law states that a temperature gradient gives rise to a heat flux, Ohm's law that a density current flux gives rise to an electric potential difference, etc. Smaller is the temperature gradient, smaller will be the flux, and more time we will need to bring desired temperature changes to the system. This is an inevitable consequence of nature. We would like things to behave like Eq. (9) states, but things cannot move with Eq. (9). In real life, we need finite fluxes in order to move the system out of equilibrium, with the cost of an increase of entropy.
Eq. (9) represents a limit, in the sense that it is the best step for this heat engine. For practical purposes, to approach this in real life is not that crazy. Imagine your fluid in step $1-2$ is at $\pu{99.8 °C}$. It needs to recieve heat from a heat reservoir at a higher temperature. Boling water at $\pu{100 °C}$ can be chosen, and this is very near an isentropic operation, by applying Eq. (8). We will need a lot of boiling water, because as the reservoir gives heat, its temperature will go down. If the temperature of the system and the surroundings are equaled, beyond here, no temperature changes can be obtained.