I think the crux of the issue here is that while web browsers were very good tools for navigating web sites in the past decades, modern web sites work in fundamentally different ways, and the browsers we use are no longer necessarily the best tools for navigating them.
The simplest web site consists of a hierarchy of static documents with hyperlinks between them.
Example:
Home Page
About Us
Products
Contact
Help
When a user navigates this web site, they would start by requesting the Home Page from the web server. The web server would return an HTML document and other assorted assets that describe the entire Home Page. The user browses that page and clicks the hyperlink for the Products page. The browser sends a request to the web server for that page. When the browser receives the new web page from the web server, it discards the entire Home Page and replaces it with the Products page. If the user decides they want to go back to the Home Page, they can click the Back button. This tells the browser, "Discard whatever page I have open now and put back the page that I was on last."
Let's take a closer look at how web browsers and web servers interact in the example you described.
You click a link on Stack Exchange to view a question. Your web browser sends a request to the Stack Exchange web server requesting the web page for that question. The web server finds the page and returns it to the browser. You scroll down and click to expand a comments section. The browser sends a request to the web server for those comments, but when those comments come back, instead of discarding the current document and replacing it with a new document containing the comments, it just inserts the new comments into the current document in the appropriate place.
If you were to navigate to another page and then click the Back button, your web browser would see that the last document you accessed was the page for the question, but it would not know about any of the modifications you had made to that page (like inserting the new comments).
This is an example of how a web site can behave in a way that is fundamentally different from the way web sites were originally intended to work. Instead of viewing one document at a time, we are actually requesting lots of little fragments of documents and assembling them in the browser.
So what is the reason that so many web sites break the Back button? It is because the Back button works by loading the last page requested from the web server, and many modern web sites are designed using a paradigm where web pages are built dynamically in the browser from fragments of other pages.