Glad it was helpful! Now that I'm at a decent keyboard let me see if I can answer some of your specific questions...
Would a typical French person today be able to read and understand (roughly) the French of Charlemagne’s time?
Read? Probably. Hear and understand? That would be much more difficult. Île-de-France French is probably the single most innovative Romance language (among other things, it has ended up with phrase-final stress not by moving stress but by deleting everything that happened to be after the stressed syllable), and Old French would probably sound much more like Spanish or Italian to modern ears. Honestly a modern Spanish speaker might find it easier to understand than a modern French speaker would!
(Edited to add an extra side note - Icelandic is often trotted out as specially conservative, and it certainly is grammatically, but its conservative spelling hides a good deal of phonological changes and I doubt that a modern Icelandic speaker could understand spoken Old Norse without a good deal of practice. It might be closer to eg modern unofficial-standard Norwegian vs modern Danish, though, where once you can figure out how to convert the phonology you can understand the words being said just fine.)
Could an average Chinese person understand the gist of something written during the Song Dynasty (and for non-alphabetic languages, is that even applicable to estimating whether two speakers could theoretically understand each other)?
Average Chinese person? Probably not, though I'm not sure what the average level of literacy in Classical Chinese is for Chinese people (I imagine 'not very high'). Chinese in particular is a complex situation, in that a form of Chinese as spoken in the centuries surrounding Confucius (500s-ish BC) remained the ostensible written standard - albeit with more and more admixture from modern varieties - into the 20th century. That said, the standard only covered written Chinese, and since the Chinese script references pronunciation more than it encodes it, spoken varieties were free to diverge without any pressure at all from the standard. Old Chinese - a term that covers a massive period of time but is usually reconstructed around like the 500s or 700s BC - is overwhelmingly different from any modern Sinitic language. It didn't have tones, and had all kinds of complex consonant clusters - and maybe even some affixes here and there! Some of those affixes are preserved in various ways in modern Sinitic languages, eg by tone alternations or maybe slightly different outcomes of the rhyme part of a word or whatever, and sometimes maybe even just by being written with different characters whose pronunciations have now merged.
To be clear, in premodern times standard / prestige varieties rarely had much influence on pronunciation anyway. Romance is a fun example of this, because it took a long time for anyone to realise they 'weren't speaking Latin anymore' - they just wrote in Latin and would convert it when reading into whatever early Romance variety they spoke. The earliest non-Latin Romance writing we have is for an oath taken by a Frankish prince in the 800s, who would have spoken Frankish rather than Old French and thus couldn't just convert from Latin - he had to have it written out for him the way he needed to say it.
The spread of Arabic really got started in the 600s, and there are several not-mutually-intelligible versions of spoken Arabic in different regions, which seems to suggest a time frame of 1000-1500 years is roughly accurate? Or was the interaction between Arabic and, say, North African languages as extensive as that between Old English and Norman French?
I am less of an expert in Arabic linguistics, but I would say that timeframe is generally relatively sensible, though it can be much shorter. I'm pretty sure there's been some extensive interaction between Arabic and Berber languages, but also Arabic varieties on the other side of Egypt are just as divergent from each other. I would default to assuming that most of the divergence is simply due to there having been a long time for different varieties to drift apart.
(There are some highly divergent Arabic varieties, like that spoken in South Sudan, but those are due to much more influence from local languages.)
How much does change depends on the level of interaction of the language with other languages? If a language was spoken by a small group of people in an area where other languages predominated, would we expect it to change substantially faster (this relates to some evidence the book presents regarding the ancient near east)? How much faster?
This a possible probable yes. Especially if this language is in contact with one or more similar-to-each-other languages with much more cultural prestige, it will probably start to change to more and more resemble those languages. We can see this process in a lot of places - many modern indigenous languages spoken in now-Anglophone regions of the world have strongly English-influenced sound systems and are often picking up English phrasings in their grammar, and we can see many other examples of languages growing closer to each other over time. Fun examples are Ionian Greek (now dead but documented in the 1920s), which had Greek words and inflections on a mostly Turkish structure; Akkadian and Sumerian, which we can watch influence each other in real time until they both went extinct; and Quechua and Aymara, which have nearly identical sound systems but share <20% of core vocabulary and thus are almost certainly not related.
That said, there's nothing stopping a language that's largely isolated from just carrying on with innovation as much as it wants to. Japonic languages show this enjoyably - Japanese is the most conservative phonologically by a good margin, despite having a significant amount of what looks a lot like Koreanic influence in its grammar (in many ways grammatically it's the least Japonic-looking Japonic language), while the much more isolated Ryuukyuuan languages phonologically look almost like 'Japanese but shoved through a bunch of extra sound changes'. Miyako in particular is quite spectacular - Japanese uru 'sell' is vv in Miyako, hito 'person' is pztu (note the /p/ is a retention where Japanese changed it), and kushi 'comb' is ff!
So yeah, language change speed is tremendously complex, and very hard to pin down to much in the way of general principles.
Side note - the tones thing in Sinitic is a fun example of areal changes spreading. We think of those kinds of contour-as-a-unit tone systems like Mandarin and Vietnamese and whatever have as incredibly core parts of their vibe and identity, but basically everything in Southeast Asia that has a tone system now gained it sometime between about 500 and about 1500 AD as part of a process shared across the whole area. (Khmer is an example of a holdout that's never gained it, and compare eg Rgyalrongic for some languages related to Sinitic that have never had tone and generally look shockingly different from anything in China proper.) Other families have had tone for longer - Oto-Manguean and Niger-Congo are both reconstructed to have had tone as long as anyone can tell, and even in Japonic you just kind of have tones from the start (albeit that start is like 500 AD anyway so it's not as noteworthy).