There are many variations of this question that I've found on this site, but so far I haven't found an answer that solves my exact use case.
Currently, I am able to SSH into my Raspberry Pi 3 b+ (running Raspbian Stretch Lite) from my laptop (running Ubuntu 18.04 LTS) using an ethernet cable connected to a router, which is then connected to the Raspberry Pi via ethernet as well. To make this possible, I added an empty file named "ssh" to the boot directory of the Pi.
Specifically, I use the command:
ssh pi@<ip_address>
to connect to the raspberry pi. I obtain the IP address of the Pi every time by entering the router IP into my web browser, which is 192.168.0.1. Then, I'm able to execute whatever I want from the command line on the Pi.
Now, the problem with this setup is that I don't want to carry the router around anymore, as it takes up too much space in my backpack. I want to have the same level of control over the Pi, but without the router. Also, obviously I don't want to use and HDMI cable, monitor, and external keyboard and mouse either, as I could not feasibly carry all these components in my backpack.
So: Is there a way I can control the Raspberry Pi in virtually the same way I am now, with only using my laptop and an ethernet cable?