How can I keep my project-specific Motion elements together with my Final Cut projects?
FCPX has currently no way to link Motion Projects to FCPX Projects. To place Motion Projects in another directory than the default one, you have to create symbolic links using Terminal (see below). Motion Projects can only be used in FCPX as Templates.

From Apple's PDF "Managing Media with Final Cut Pro X Libraries":


  Motion templates are not managed as assets within the library but are instead stored in ~/Movies/Motion Templates/. If a project is dependent on custom titles or other Motion templates, these must be handed off separately.


I. Managing Motion Templates Manually

FCPX searches for Motion Templates in ~/Movies/Motion Templates/Type of effect/Category/Name of effect/.


~/ means your home directory
Type of effect is one of: Compositions, Effects, Generators, Titles, Transitions.
Category, Name of effect: the name and the category under which the effect will appear in FCPX. 


Within Finder you can :


Change the names of categories and effects
Create new categories and rearrange the effects inside them
update: New templates are detected without restarting, removed templates will show as offline until restarted


You can for example put all project-specific effects in a category named after that project. When you archive your project, you move the category's folder along and it will disappear in FCPX.

Update:

II. Templates Outside Templates Folder (Requires Terminal)


Find your Template (see above) and move it using Finder
In the Terminal create a symbolic link to your Templates new location (while aliases from the Finder are not recognized, symbolic links created in the Terminal are)

ln -s /Volumes/ExternalHDD/Untitled.fcpbundle/MyTitle.moti \
      ~/Movies/Motion\ Templates.localized/Titles.localized/MyCategory/


Change the above folder names to reflect yours.

In this example the Template is inside a Library on an external drive! See the next section on how to get it there.
To use this drive on another Mac, repeat the Terminal command there.


III. Templates Inside Library

To make sure a Template stays with the project it belongs to, you can place it inside the project's .fcpbundle:


In FCPX control-click on your library and choose Reveal in Finder


In Finder control-click on your library and choose Show Package Contents


Find your Template (see I.) and place it here. Then create the symbolic link (see II.)


Credits for Terminal inspiration go to MacBreak Studio.