I read the Cargo manual about the patch option but it is still unclear to me.
Is it possible to instruct Cargo:
Is making my own fork of the project the only way to do it?
It is not possible to instruct Cargo to do something like "take version 1.2.3 of crate foo-bar from crates.io and apply these arbitrary changes to the source code before compiling it".
The Cargo documentation is not lying to you: you will need to fork the project you wish to change, make the changes however you need, then replace the dependency with your forked version.