That's strange, of all the places in the world I wouldn't suspect that US have a higher price for calling non-local cells/phones (and even has such thing as a long-distance call). Here were I live the long/short distance have the same price for about 15 years now). I know that Poland is small in comparison to the US, but I don't see a point in charging more for longer distance (one could just average the price).
I don't know if it is a price thing (except phone companies long ago charged for long distance, and hate giving up that fee).
I think the real problem is that these gate systems at apartment complexes setup to only handle 7 digits. It was install in the 70s or 80s when our state when our part of the state had only 1 area code (leading 3 digits). Now, we have several. When we dropped our land line, we found that the door buzzer system could only call the 763 area code, but our cell phones use 651.
Most landlines, of which a significant number are VOIP do not charge per call or per minute to any number in the US. There is a flat monthly fee for unlimited calling. Mobile phones charge the same per minute regardless of the number dialed.
Yes, this is oversimplified and there are billing options which do strange things, but it's unlikely that the reason for the local number policy is the cost of the call.
It seems fairly likely to me. The phone lines that charge extra for long distance are exactly those cheap, low-functionality lines that a system like this is probably hooked up to.