An alternate definition of selfishness: Consider the world as a set of concentric circles centered on an individual. The narrowest encompassing the individual, the next encompassing the people they love most (usually children), the next their greater circle of family or friends, and so on to the largest circle the includes the world. (What appears in any circle and how far from center it appears can vary greatly from person to person. Some include animals, the environment or god(s).) The more one's interests and decisions are concentrated on the inner circles, especially the most inner one, the more selfish one is. An altruistic person would be one where the gradient of interest doesn't peak at the center. This definition is in line with the meaning of "selfishness" as commonly used, its "common sense" definition.
-
[1] The only way your definition would not be tautological is if individual humans weren't atomic or autonomous agents. It's something to consider. It's certainly possible that we have genes that predispose us to care about or subconsciously act for the benefit of things beyond our individual self, in the same way individual cells in a multicellular organism are preprogrammed to act for the good of the organism. If multicellular organisms evolved from single-celled organisms and cells lost their "selfishness" in the process, it is entirely possible that it can happen to the "cells" that make up larger "organisms" such as a species or an ecosystem.
What is selfish and what is altruistic isn't as easily defined. In fact the only way to really clearly determine whether an action is selfish or altruistic would be to understand the intent behind the action.
But of course not even the individual are always aware of why they do what they so that doesn't really help us.
There are more defensible forms of psychological egoism, but your summary ("there is personal benefit (feeling good) to being altruistic") doesn't work.
Think about it, every time you take a bite of food, you act selfishly. I guarantee you if you look hard enough you will find someone that is more starved than you are when you take that bite.... even if you, yourself are starving. How much more selfless and altruistic can you be than to give all the food you would otherwise eat for the benefit of your fellow man that otherwise would starve? (nevermind what it says about them to accept your sacrifice). How can you not be selfish when you choose to service your own need of nourishment, no matter how little you take, over choosing to feed those others that need it more.
Egoism on the other hand doesn't mean that you don't cooperate. It doesn't mean that you can't be benevolent. True, it doesn't demand any of that from you, but in the long view and all other things being equal, it's usually in your interest to cooperate and to be benevolent.
Imagine you're the only skilled baker in town. Does your community benefit more from you when you starve yourself to death, or when you keep producing food for them?
The only thing I'd add is that in my experience "short-sighted self-interested decisions" are made by people who do not understand externalities, and/or who favour a locally optimal but globally sub-optimal scenario (defectors in the Prisonner's Dilemma). "Socialist" policies like a congestion charge or pollution regulation are thus consistent with individual rights and an individualist philosophy.
[1] see: http://aynrandlexicon.com/lexicon/selfishness.html for quotes from her various books.
For example, I'm a married man. I am married because I want to share my life experiences with my wife. I want to cooperate with her in building those experiences and navigating through the options. I engage in this deep cooperation and sharing with another person precisely because I am selfish. I give money and sometimes my time to causes like the Red Cross and Institute for Justice, again, not because I'm naturally cooperative, but because I view, over the long term, that these organizations may actually either be helpful to me someday or will help mold the kind of society I want to live in: I'm being cooperative because this sort of cooperation is ultimately in my best interest... in other words, I'm being cooperative precisely because I am being selfish.
I could rob a bank to get cash now, cheat a merchant that gives me too much change, simply be rude to people because it feels good in any one moment, or... as the test in the article states... take from the communal pot without contributing anything. That's the sort of thing the article is calling selfish, but looking at my life as a whole, each one of those things actually aren't all that selfish; they simply satiate in the moment and comes with consequences if one things more clearly about it. Each of those "quick fixes" end up causing me more long term harm than good (always being on the run, making a society where dishonesty is the norm, encouraging everyone to be rude, encouraging less sensible generosity).
So yeah, we may cooperate as a default, we may make short-sighted self-interested decisions with a little thought, but selfish cooperation takes the most thinking.