Of course, there are specific cases where morality and self-interest conflict. But it might nevertheless be prudent (in a "rational irrationality" kind of way) to develop moral character in ourselves. There are three lines of argument which could support this: achievability of goals, the paradox of hedonism, or a moralized theory of well-being. If these work, it would provide us with a strong answer to the amoralist: even the self-interest theory of rationality tells them they ought to be moral!
A moralized theory of well-being is the least plausible approach, though from the little I know, it seems to have been favoured by the Ancient Greeks. The idea here is that virtue is an essential part of one's eudaimonia or flourishing. Socrates thought that evil was bad for your soul. (Hence the notion that people only ever do evil from ignorance -- for who would knowingly harm themselves in such a way?) The modern equivalent would be an 'objective list' theory of well-being which included virtuous character as one of the objectively valuable components of the good life. But as I don't find such theories at all plausible, I will not pursue this option any further here.
The 'achievability of goals' argument can be found in my recent post on V-beings (follow link for explanation of the terminology):
Suppose you want only to maximize your future happiness, and you have the choice of becoming either a V-, I-, or E-being. Which should you choose? I'm inclined to think the V-being has a rather large advantage, in that they would find it much easier to get others to go along with their ends. (Just imagine: "Hi, I want you to be happy!" "Okay, sounds good to me!") Their goals would be generally supported by the rest of society, and thus they'd have a better chance of succeeding at them and attaining happiness themselves. By contrast, it must really suck to be [a sadist].
But note that this is, so far, merely an argument to change your reactive attitudes. You should try to cultivate a taste for other people's happiness. But that doesn't require you to see other people as ends in themselves. You might still try to please other people merely as a means to your own happiness. To encourage a deeper moral conversion, we must turn to the next argument, which Kai Nielsen puts as follows:
[The egoist], being human, could not but value friendship, love, comradeship and fraternity. But all those things would be impossible for him, at least in their more genuine forms, if he lived the life of an immoralist. But, in not having them, he loses a lot -- loses more than he could ever gain in a tradeoff with the goods he gained by his immoralism. The very central human goods (friendship, love, comradeship, fraternity), goods resting on a non-calculating reciprocity, will not be available to him, it is natural to argue, if he does not take the moral point of view. (Why Be Moral?, p.294)
There is definitely something to this argument. It echoes the 'paradox of hedonism' - if you explicitly aim at happiness, you are sure to miss it. This good can only be achieved indirectly, through sincerely aiming at other goods, including those which require "non-calculating reciprocity". Thus the rational egoist should strive to lose his egoism, and become a more moral person.
The conclusion is still somewhat limited, however. As Nielsen goes on to note, it really only rules out systematic egoism. One might attain the above goods without being perfectly moral, thus leaving open the option of a more limited amoralism. Nielsen demonstrates this through the case of a "classist amoralist", who forms deep and genuine connections to others within his elite class, but ruthlessly exploits the lower classes without a twinge of guilt. It is difficult to deny that such behaviour really might be in his best interests. So if we are to hold that it is always irrational to be immoral, we must look elsewhere than prudence for the explanation.