Seems like VGA only has one background layer, it appears to be a typical bitmap screen like most home computers of the 80s (Amstrad CPC, Commodore 64 etc.) where each pixel's color is stored in a section of memory that can be written to directly.
Most video cards of the day could theoretically have up to four pages of video memory, as they had 256 KiB of storage, and only 64 kB was needed per screen for a 320×200 resolution. There was only one displayed "layer" (or plane, to be technically correct) at a time, though. You couldn't render two different things and have one overlay the other, as you do with modern video cards.
The closest I can get on DOS (I'm using DOSBox if it's relevant) is the mouse cursor, which seems to "eat away" a portion of the screen when it spawns, after which it can move over top of text without erasing what it passes over.
This was a feature of the mouse driver software. It would store whatever was underneath the cursor when drawn, and then replaced when the mouse pointer moved. This was independent of video memory.
Some special video modes wouldn't work with this default behavior, in which case the programmer had to draw a custom cursor. The mouse driver would simply suggest where the correct position was in this case.
In fact, some games that updated the screen frequently would have the mouse pointer "hidden" until you moved it. The driver didn't know it needed to update the pixels on the screen. Programmers eventually got around to anticipating this and fixed it with custom cursors.
For an example of what I'm asking, please take a look at this screenshot of Chip's Challenge for MS-DOS. The yellow credits text scrolls over the background. Is it on its own plane somehow?
No, video cards of the day only displayed one plane at a time. The programmer could choose which plane to display in certain modes, however, in a method of page flipping. This allowed the next frame to be rendered ahead of v-sync, so when the page was flipped, it provided an instantaneous change to the display.
Is every letter a "mouse cursor?"
No, they were just normal bitmaps. Things like transparency and multiple layers were not yet possible at the hardware layer; they were managed in software entirely.
Or, is the screen constantly being redrawn with the letters in their new position?
Closer. Each frame is drawn either off-screen, and the displayed plane would be selected for each frame, or in a memory buffer, and then blitted to the screen during v-sync (e.g. with DMA or a simple "memcpy" loop).
The movement of the text is so smooth it appears to be hardware scrolling like you would see on the NES or Super Nintendo but as far as I'm aware MS-DOS PCs don't have that.
They didn't have hardware scrolling per se, but they could use double-buffering or plane swapping to provide a consistent framerate. One such article that appears to do a pretty good job of explaining it is this one.
The unchained/Mode X mode was incredibly useful, as it allowed full access to 256 KiB of video memory at the cost of some complicated algorithms to get pixels where you wanted them. However, for most games, this produced a very nice output at 60+ frames per second. Some of the best games used this technique for quite a while.
In summary, memory back then was at a premium, but developers had a lot of tools available to them provided by the hardware. In a sense, it was still "hardware accelerated", but in a very primitive form. As video memory expanded into megabytes and finally gigabytes of memory, entirely new APIs appeared, such as display lists and other techniques.
However, back in those days, every pixel had to be accounted for, and programmers came up with clever techniques to make those frames as smooth as possible.