What can I do about a toilet drain pipe that is too high above the floor?
Assuming the flange is sound (it looks pretty worn and rusted), you might try to create a ceramic tile platform that would lift the bowl to be flush on both the flange and the floor.  You are right that a lifted flange is a problem because the wobbling will eventually break the wax seal and allow leakage and smells, to say nothing of making the user uncomfortable.

It looks like you have some type of vinyl flooring under the bowl now.  if that is the case, you could work out a tile layout, at least a bit wider than the footprint of the bowl, then trim the vinyl just ouside of the new tile boundary. Remove the vinyl and affix the ceramic tile to the subfloor.  You may want to use a tile membrane base over the subfloor and under the tile for better adhesion and water resistance.

Obviously, you need to find a tile that will be just high enough with the vinyl removed and allowing for the membrane (if you use it) and a bit of tile adhesive. After the tile is set and dried, you can seal the the new tile platform to the rest of the vinyl flooring with a good quality caulk or silicone sealant. 

If the flange is not solid (and the bowl is bolted to the flange), it needs to be replaced, usually a job needing professional help.