Objects rotate around their position. So when you rotate an object using the Object Selection tool, the tool adjusts the position of the object to make it rotate around the displayed (and movable) anchor point. There is currently no “pivot point”, though it’s something I’d like to add support for.
The object rotates around its position, not its center. The position of the object is generally in the top-left for shapes and bottom-left for tile objects. Once we support a configurable pivot point it can be used to have objects rotate around their center.
Tiles can be drawn at an offset, but this offset is currently defined globally for all tiles in a certain tileset (Drawing Offset is a tileset property). There are plans to make this per-tile (essentially introducing a configurable pivot point for tile objects). See issue Draw offset for individual tiles · Issue #871 · mapeditor/tiled · GitHub.
This happens when the object has zero size. Rather than ending up with an invisible unable-to-interact-with object, the object is rendered with a fixed size around its position. But the handles indicate the object does not have a size, and dragging the handles will “fix” the object by giving it a proper size.
Probably it’s too easy to create such zero size objects, and simply clicking with the create object tool should possibly do nothing. Previously, zero sized objects were essentially supported as a way of placing point objects, but for this purpose an explicit point object type was introduced in Tiled 1.1.