Place potatoes in a large pot and cover with salted water. Bring to a boil, then reduce heat to medium-low and simmer until tender, 15-20 minutes. Drain and reserve the cooking liquid. Allow potatoes to cool until they can be handled.
Boil cabbage and onion with the reserved potato water in a pot until softened, about 5 minutes. Drain.
Preheat oven to 350 degrees F. Grease a 2-qt. casserole dish. Peel and cut potatoes into chunks, place in a large bowl. Mash skim milk and butter into potatoes until mixture is smooth. Stir drained cabbage and onion into potato mixture. Fold cream cheese, salt and black pepper into potato mixture, stirring until the cream cheese melts.
Pour potato mixture into prepared casserole dish. Bake in a preheated oven until browned, 30-35 minutes.