The Pathfinder implementation is much better.
Most cantrips and orisons are nearly worthless, while a few are regularly handy. Being able to use those few as much as you need to is much better than maybe having the option of using one of the ones that’s usually useless.
So the Pathfinder version gives a more potent, useful effect than yours, and that change isn’t breaking anything. Yours won’t either. Because ultimately, cantrips and orisons just aren’t that game-changing in the first place.
But on the flip side, I do not think this will have the desired effect. Cantrips and orisons are minor in the extreme; just about nothing you do will ever make them a major source of important decisions or exercising creativity.
Moreover, your implementation does have a problem for prerequisites: some feats and prestige classes, such a loremaster, require a certain number of spells known meeting some criterion, such as seven divination spells. With this change, everyone automatically knows all cantrips and orisons on their list, which can automatically meet, or largely meet, these sorts of requirements. But verifying that a given criteria is met means digging through the books to find how many cantrips or orisons on your list meet the criteria, which is kind of annoying. But the alternative, to just not allow these requirements to be met with cantrips or orisons, is a huge blow to spontaneous casters, since they get so few spells known and frequently relied on their cantrips or orisons to meet the requirements for the lowest cost (since cantrips/orisons have the lowest value and cost the least to give up in favor of meeting the requirement).
Honestly, I don’t think this is a big problem, because I think those requirements were always really dumb: they were trivial to meet as a cleric or druid, and pretty simple as a wizard, while being extremely painful a bard or sorcerer. Eliminating that imbalance is a good thing. But it is something you should consider.