As if C3C v1.15b, the SPHQ appears to be working correctly -- it did not work under previous versions of C3C.
I think maybe you are confusing one component of overall corruption -- distance corruption -- with total corruption. Under all non-communist governments, a city's distance from the Palace helps determine that city's total corruption. But there are other factors, too, including the empire's total number of cities. Each map size has an initial "OCN" or optimal city number; cities ranked far beyond the OCN (as it may be modified by various things) are more corrupt than cities within the OCN.
Communism is the only government that employs "communal corruption." Under the communal corruption model, each city's corruption is largely a result of the ratio of the empire's total number of cities compared to the (modified) OCN. There are other factors, too, but this is usually the largest and most directly implicated by your thread. As a simple example, in an empire of two cities, the non-palace city would suffer a lot of corruption if located far, far away from the palace-city in a non-communist government (due to the distance component of corruption); in Communism, the second city would suffer the same corruption halfway around the world as it would if it were right next to the palace-city. Cities in a communist empire don't suffer from any distance-based corruption, but they are very much influenced by other aspects of the corruption system.
Building the SPHQ (or the Forbidden Palace, for that matter) increases an empire's OCN -- if the SPHQ is built, every city in the communist empire benefits from the increased OCN.