This is a simple but interesting idea that never occurs to me. When you need a book end, why not using another book as the book end? 50K Studio designed this simple and minimalist bookshelf with gaps at both ends. You can slot a book in and it acts as a book end. Minimal Bookshelf comes in two versions, an ordinary one and a stackup one. With the stackup version, you can create a multi-level bookshelf. The downside is you need to find books with a right thickness and a right height as the bookend and support. You can see the video here.
Design of Bookcase