Let's discuss some fundamentals. To begin with: Read the handbook.
First: You are using a RELEASE version of FreeBSD, right? Because freebsd-update only works on release versions. Those are the production versions, intended for normal users. There are also versions that are called CURRENT and STABLE. Those are intended for people who want to alpha- and beta-test unreleased versions; they are not supported in this forum, and they are not for the faint of heart.
Second: You need to learn about the distinction between the FreeBSD base OS, and its packages. The base OS contains everything that you need for a self-hosting (meaning it can compile itself) and command-line based (meaning no GUI, no graphics or windowing) operating system. The base OS is updated using freebsd-update. The base OS changes version numbers when it is upgraded. Version numbers consist of the major number (for example 12), minor number (for example 3), and patch level (for example p2): I'm running 12.3p2 on my machine. The freebsd-update process (using fetch and install) you describe above will automatically go from patch to patch, but will not go across major or minor versions. To upgrade to the next major/minor version, you need to add the -R switch to the command.
And: If your upgrade includes the kernel, you need to reboot to switch to the new kernel. One good way to find out whether a reboot is required: Use the command freebsd-version (read its man page). After a reboot, I would rerun "freebsd-update install", just to make sure the update actually finished. There are updates where you have to reboot and restart the update, the messages will tell you, but you might forget to read the messages.
The packages (also known as ports) are distinct from the base OS. They don't have versions or releases, and get updated on individual schedules. Some packages are version locked, you can mostly ignore that. You can run package update/upgrade independent from freebsd-update.
You are showing a command line that has all the commands in one line. Which is also what Menelkir suggested with "freebsd-update fetch install" Personally, I don't do that. I run one command at a time, and look at the output. That's because the following commands may generate lots and lots of output, which will get buried if you run more commands. Similarly, I don't chain multiple commands in one line with "command1 && command2 && ...", again I want to see what happened before going the next step.
Did I mention reading the handbook? There is a really good chapter about this, which includes a discussion of packages versus ports (they are the same, but very different, read the book).