There is really nothing else. If the files are correct, the method the error message claims does not exist actually does exist – it's in the file plugins/console/akeebabackup/src/Extension/AkeebaBackup.php on lines 40 to 43. If PHP does not see the code that you can read with your own two eyes then it's an op-code cache which has cached the old contents of the file in memory and hasn't looked at the updated files since.
OPcache is the only op-code cache available for your PHP version, that's why I told you that you need to reset OPcache. In the server where this took place, Akeeba Backup works fine exactly because the cached old code was expunged from memory, forcing OPcache to reload it.
Two more bits of information for completeness' sake.
In the past, another two op-code caches existed: APC and WinCache. The APC cache stopped being compatible with PHP back in PHP 5.5 release in June 2013. WinCache stopped being compatible with PHP back in PHP 7.2 released in November 2017. Therefore, the only op-code cache since PHP 7.2 has been OPcache which is bundled with PHP itself.
OPcache can be configured in many different ways. What makes the most difference is a. how long the compiled PHP source code (op-code) is cached for and b. whether PHP scripts can request that the OPcache for a specific file is cleared.
How long op-code is cached for is determined mainly –though not solely– by the configuration options opcache.validate_timestamps and opcache.revalidate_freq. If the former is disabled and/or the latter is set too high, PHP will NOT "see" updated .php files. It will instead run the already cached compiled version of the files predating the update of Joomla and/or its extensions. I believe that this is what your host is doing, causing the problem you are experiencing. Another problem you are experiencing but have not observed is that you update Joomla and its extensions, but the old code (with known security issues!) is still running on your site despite the fact that you can see the updated files on your server's storage. This kind of configuration makes sense for bespoke servers which are restarted or created afresh as part if a CI/CD pipeline, but it's completely inappropriate for a commercial, generic host.
Whether PHP scripts, like Joomla itself, can request that the OPcache for a specific file is cleared is determined by the opcache.restrict_api configuration option. Access to the opcache_invalidate function may also be disabled by the host using PHP's disable_functions configuration option. When Joomla cannot use opcache_invalidate it will still proceed with updating itself and its extensions, but the newly installed / updated code will NOT run until your server's OPcache decides to re-read and re-parse those files.
I would recommend sending a link to this public ticket to your host and ask them to check whether any of these is taking place on their server. I do not know how their server is configured. I do not even have access to your site to check these option values myself. I can only make an educated guess based on the error message you reported, my knowledge of setting up my own servers, and my experience dealing with this kind of issues, as well as the feedback you provided (you already told me that on the one site where the PHP config was "tidied up", i.e. OPcache was cleared as a result, the software works which tells me that I am most likely correct about my educated guess on what is going on).
Nicholas K. Dionysopoulos
Lead Developer and Director
🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!