You have done an excellent job of showing how you basically know nothing whatsoever about HTML. Your outer structural tags section is painfully vague, but where things really go off the rails is the stuff that goes inside <body>.
Your first sentence about H1..H6 is ignorant bullcookies. 100% grade A farm fresh priarie pies. Baloney, malarkey, reeking of not even grasping the most basic of HTML concepts!
Why? Because heading tags do not exist to create "bold text". In fact if you choose these tags just because you want fonts in different weights and sizes, you're choosing all the wrong tags for all the wrong reasons.
H1 is THE headING (singular) that everything on the page -- and possibly the site or set of related documents or interface pages -- is a subsection of. It is thus that when possible the H1 should be the first content-bearing tag on a page. H2 marks the start of a subsection of the H1 preceding it, with the first H2 meaning the start of the main content if you haven't used the <main> tag. H3 means the start of a subsection of the H2 preceding it. Do I have to explain H4..H6? This you do not willy nilly jump from a H2 to a H4, or start a document with a H5, or any other half-assed incompetent use of these important structural tags.
Structure and meaning for MORE than just visual users, because that's HTML's flipping job. To say what things are -- structurally, grammatically, semantically -- and NOT what you want things to look like! This is why halfwitted garbage like bootcrap and failwind are monuments to developer ignorance, incompetence, and ineptitude. They use classes to do the same type of dumbass presentational markup practices.
Saying that "DIV is the most important tag" is utter gibberish, only further showing you know dick-all about what HTML is even for! DIV -- like it's phrase-level cousing SPAN -- is a semantically neutral tag for grouping elements that MIGHT recieve a style around them, or even on them (see CSS combinators). It applies no meaning to what it wraps, and for non-visual UA's like screen readers, braille readers, and search? They do not a single blasted thing with it! It is literally there to say "this stuff MIGHT recieve style" without saying what that style IS.
That's not "hard to explain" if you stop thinking about saying what things look like with your markup like it's still the mid '90's browser wars and the mental-huffing-midgetry that was HTML 3.2! HTML is for what things are, grammatically, structurally. If you are choosing any of your tags, attributes, classes or ID's to set a specific style -- appearance -- you have utterly, totally, and completely failed to grasp what HTML is even for.
You equally go off the rails with paragraph, as putting a gap above/below has not a damned thing to do with why you would/should use the tag. HTML semantics is based on professional writing norms that have been around for decades before it was even a twinkle in Tim Berners-Lee's eye! It means a flipping paragraph! Aka one or more sentences containing a complete thought. The default appearance of a margin around it has absolutely NOTHING to do with why you should use it.
And such disinformation is why we end up with websites that tell people using speech assistance, braille, and even search engines to go F*** themselves! A lone image by itself is not a paragraph -- even if you think it's worth a thousand words -- nor is a <label> and <input> pairing. If you see people using <p> for anything other than an actual grammatical paragraph you are looking at incompetent misuse of HTML.
Bascially a paragraph as it would have been taught in the 4th grade circa 197. So now the shitshow that's education that's what? 6th year college English major?
Even <img> requires a bit more explanation as to when and where to use it... becuase if the image being loaded isn't actually content and is instead a decoration or background, it shouldbn't be in the HTML at all. Only content images get IMG. This is why the people inlining presentational SVG into their markup are equally shtupping the puppy.
If what you said in your article is what you learned from that book you're pimping? People would be well served by steering clear of it. Though honestly what you've said is the type of ignorant poplarist tripe I've come to expect from careeer educators or worse, career students.
You really might want to take a step back and actually learn what HTML is even for, becuase it seems you've been packed full of more sand than the Sahara.
That's not entirely on you, that's this industry of sleazy, disreputable dirtbags screaming "Screw accessibility", "screw the specifications" , and "screw the user." Aka why dirtbag predators like Wathan, Otto, Thornton, and Yank get to run amok peddling disinformation, misinformation, and outright lies to the gullible and wishful thinking.