This is an amazingly big difference in performance, but I can come up with a few things that can contribute.
MyISAM has historically been regarded as faster than InnoDB, but for the latest versions of InnoDB this is true for a much smaller set of use cases. MyISAM usually scans read-only tables faster. In most other use cases, I usually find that InnoDB is faster. Often many times faster. Stop locks are a deadly ring for MyISAM in most cases of using MySQL.
MyISAM caches indexes in its key buffer. You may have set up a too small key buffer for efficient index caching for your rather large table.
MyISAM is OS dependent for caching table data from .MYD files in the OS cache. If the OS runs low in memory, it will begin to flush its disk cache. This may cause it to continue reading from disk.
InnoDB caches both indexes and data in its own memory buffer. You can tell the operating system not to use its disk cache if you set innodb_flush_method to O_DIRECT, although this is not supported on OS X.
InnoDB typically buffers data and indexes on 16K pages. Depending on how you change the @eid value between requests, it may already cache data for one request due to the disk reading the previous request.
Make sure you create indexes the same way. Use the explanation to check if MySQL is using an index. Since you included description output instead of show create table or show indexes from, I cannot determine if entity_id is part of a composite index. If this is not the first part of a composite index, it will not be used.
If you are using a relatively modern version of MySQL, run the following command before running the query:
set profiling = 1;
This will enable query profiling for your session. After executing the request, run
show profiles;
This will show you a list of queries for which profiles are available. I think it saves the last 20 by default. Assuming your query was the first to run:
show profile for request 1;
Then you will see the duration of each stage of the query. This is extremely useful for determining what (for example, locking tables, sorting, creating temporary tables, etc.) causes a slow query.