how do I create a sprite with hard (aliased) edges, but still be antialiased inside?
This answer was composed based on help from several individuals in the #blender IRC channel (you know who you are).

The first step is to use blender's Compositor.  Start out by clicking the Use Nodes checkbox.  That should create the two-node pipeline that does nothing exciting.  Route the alpha channel through Math node (available through the Converter submenu of the shift-A menu) configured to do a Greater Than operation against 0.001.  This means that an alpha of 0 will remain zero, but an alpha of 0.001 or higher (and 0.001 &lt; 1/255)  will be converted to 1.



The problem that remains is that the edges that otherwise would have been translucent are now kind of dark.  That's because the Image channel coming out of the Render Layers node is premultiplied.  To correct for this, add an Alpha Convert node (available under the Converter submenu) and route the image channel through that on its way to the Composite node.



Now your edges are hard and they match the thresholded alpha channel.