Surely it would be better and cheaper for small companies to host their own websites from home or an office.
Better it can’t be. A home or an office is not secure enough, nor truly build for housing servers in the optimum of conditions.
Cheaper it can be only if the host kept that PC on 24/7 anyway. Otherwise, it’ll probably be cheaper to get a reseller account from some company. Back in 1997 it may have been OK to host with a company that used the basement as a data center. Things have changed a lot since then.