This is not hard to do with a helper. A Helper static method that returning a new array with model primary key as the array index. Performance impact is minimum because model is pass around by reference and grouping similar functionality together in a class.
I didnt really catch your message. If you are fetching data and browsing the array reindex it, the performance will be impacted specially with big array.