I have the same problem. I sent my BeoCom 6000 off to an authorized service center, and worked with B&O North America for a solution. (I purchased the phone new in February 2000. It worked fine until last year.) B&O upgraded the software on the base station and handset, along with a fresh battery and new circuit board.
About 75% of the time, the caller-ID does not show up. It works every time on my legacy BeoCom 2500.
I also have noticed that if the phone number is present in the previous call log, it will not appear again in the last 24 called or received numbers. Any call from a cellular phone outside of my area code will not appear; however, all land-lines do. (The BeoCom 2500 shows all calls, even cellular and international.)
The caller-ID does not work during the time when the phone is ringing. If I check the call-ID several days later after accepting a call, sometimes it will show up in the caller-ID as new.
Take the BeoCom 6000 to a neighbor's house, and mine works flawlessly. Why?
I have considered buying the BeoCom 1 and trying it out.